{"id":651,"name":"@playwright/test","ecosystem":"npm","repository_url":"https://github.com/microsoft/playwright","issues_count":20290,"created_at":"2025-06-06T15:01:36.246Z","updated_at":"2025-06-06T15:01:36.246Z","purl":"pkg:npm/@playwright/test","metadata":{"id":1123823,"name":"@playwright/test","ecosystem":"npm","description":"A high-level API to automate web browsers","homepage":"https://playwright.dev","licenses":"Apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/microsoft/playwright","keywords_array":[],"namespace":"playwright","versions_count":2382,"first_release_published_at":"2020-09-24T05:44:34.952Z","latest_release_published_at":"2024-12-10T02:18:06.049Z","latest_release_number":"1.49.1","last_synced_at":"2024-12-12T18:13:55.530Z","created_at":"2022-04-08T11:24:24.620Z","updated_at":"2024-12-12T18:16:22.158Z","registry_url":"https://www.npmjs.com/package/@playwright/test","install_command":"npm install @playwright/test","documentation_url":null,"metadata":{"funding":null,"dist-tags":{"rc":"1.18.0-rc1","beta":"1.49.1-beta-1733793925000","latest":"1.49.1","next":"1.50.0-alpha-2024-12-12"}},"repo_metadata":{"id":37011209,"uuid":"221981891","full_name":"microsoft/playwright","owner":"microsoft","description":"Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API. ","archived":false,"fork":false,"pushed_at":"2024-12-10T19:50:51.000Z","size":165178,"stargazers_count":67659,"open_issues_count":702,"forks_count":3727,"subscribers_count":477,"default_branch":"main","last_synced_at":"2024-12-10T20:27:48.656Z","etag":null,"topics":["automation","chrome","chromium","e2e-testing","electron","end-to-end-testing","firefox","javascript","playwright","test","test-automation","testing","testing-tools","web","webkit"],"latest_commit_sha":null,"homepage":"https://playwright.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/microsoft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-11-15T18:32:42.000Z","updated_at":"2024-12-10T20:08:00.000Z","dependencies_parsed_at":"2023-12-15T21:23:46.449Z","dependency_job_id":"165b0c38-43f0-4f5b-9ed0-b3dd64c64f34","html_url":"https://github.com/microsoft/playwright","commit_stats":{"total_commits":13625,"total_committers":602,"mean_commits":"22.632890365448507","dds":0.7974311926605504,"last_synced_commit":"eaf3536014b22bbf6ff3c52ef3820e0209341e0e"},"previous_names":[],"tags_count":139,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microsoft","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229131294,"owners_count":18024964,"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":"microsoft","name":"Microsoft","uuid":"6154722","kind":"organization","description":"Open source projects and samples from Microsoft","email":null,"website":"https://opensource.microsoft.com","location":"Redmond, WA","twitter":"OpenAtMicrosoft","company":null,"icon_url":"https://avatars.githubusercontent.com/u/6154722?v=4","repositories_count":6657,"last_synced_at":"2024-12-04T17:29:42.718Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/microsoft","funding_links":[],"total_stars":2917768,"followers":80122,"following":0,"created_at":"2022-11-02T16:20:12.368Z","updated_at":"2024-12-04T17:29:42.718Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microsoft","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microsoft/repositories"},"tags":[{"name":"v1.49.1","sha":"88bc8afc78ea6ff13d2bbb312b99eb924962766c","kind":"commit","published_at":"2024-12-10T01:25:25.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.49.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.49.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.49.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.49.1/manifests"},{"name":"v1.49.0","sha":"a70a96ab2565918360cd0f0208b5d12cae318793","kind":"commit","published_at":"2024-11-18T18:31:20.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.49.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.49.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.49.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.49.0/manifests"},{"name":"v1.48.2","sha":"dc80964a3f84dc120b5fed8837ff492a38ddb26e","kind":"commit","published_at":"2024-10-25T20:23:05.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.48.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.48.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.48.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.48.2/manifests"},{"name":"v1.48.1","sha":"ceb756dad3a3089d470890fd5c75aa585a47cb7c","kind":"commit","published_at":"2024-10-16T09:31:18.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.48.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.48.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.48.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.48.1/manifests"},{"name":"v1.48.0","sha":"0cdbb11068f86671c05d57391ac3701610f853df","kind":"commit","published_at":"2024-10-08T12:37:38.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.48.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.48.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.48.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.48.0/manifests"},{"name":"v1.47.2","sha":"d93029f32f9d0e2e2b30830ce3fde37f62273293","kind":"commit","published_at":"2024-09-20T17:21:03.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.47.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.47.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.47.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.47.2/manifests"},{"name":"v1.47.1","sha":"3d2ffd0fe97f23f480092054da5928539a3c5beb","kind":"commit","published_at":"2024-09-13T17:17:37.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.47.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.47.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.47.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.47.1/manifests"},{"name":"v1.47.0","sha":"d5943def35edadc6f9bd8daeed382559d2a55fbe","kind":"commit","published_at":"2024-09-05T21:07:57.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.47.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.47.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.47.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.47.0/manifests"},{"name":"v1.46.1","sha":"e1c861cfa7a6caf3c5b798786b1e6298c4f3cf31","kind":"commit","published_at":"2024-08-16T19:45:12.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.46.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.46.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.46.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.46.1/manifests"},{"name":"v1.46.0","sha":"99a36310570617222290c09b96a2026beb8b00f9","kind":"commit","published_at":"2024-08-05T13:35:35.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.46.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.46.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.46.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.46.0/manifests"},{"name":"v1.45.3","sha":"0e130fa8edaf85765c4a5a86bded0e6d33bfd7c2","kind":"commit","published_at":"2024-07-22T17:29:01.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.45.3","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.45.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.45.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.45.3/manifests"},{"name":"v1.45.2","sha":"d8a5f3b33193e413b404ff4aa1f71e859d8f1b6b","kind":"commit","published_at":"2024-07-16T10:45:01.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.45.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.45.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.45.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.45.2/manifests"},{"name":"v1.45.1","sha":"e8989f83d9801cdaadc3803b5341c601c9593947","kind":"commit","published_at":"2024-07-02T17:27:06.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.45.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.45.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.45.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.45.1/manifests"},{"name":"v1.45.0","sha":"4f3f6eecae490af444dd9298c9eaeb0c596915b7","kind":"commit","published_at":"2024-06-24T19:24:29.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.45.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.45.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.45.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.45.0/manifests"},{"name":"v1.44.1","sha":"afacb84a52cb1428becd071252243fc5c264caca","kind":"commit","published_at":"2024-05-23T07:29:52.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.44.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.44.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.44.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.44.1/manifests"},{"name":"v1.44.0","sha":"a6aa50b0c79c375eeb43a10086b249bc725ca81e","kind":"commit","published_at":"2024-05-06T18:26:54.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.44.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.44.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.44.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.44.0/manifests"},{"name":"v1.43.1","sha":"a051ceb8e1302293ec42d4ad01d7f6325cbbfcf9","kind":"commit","published_at":"2024-04-12T17:19:02.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.43.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.43.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.43.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.43.1/manifests"},{"name":"v1.43.0","sha":"7c7f8ac9fa866b627c4b04e02b3990a8d49e6dd3","kind":"commit","published_at":"2024-04-04T19:25:32.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.43.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.43.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.43.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.43.0/manifests"},{"name":"v1.42.1","sha":"9749f7542676bce2d77f738b5fffcd7b0f46d67c","kind":"commit","published_at":"2024-03-01T22:42:55.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.42.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.42.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.42.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.42.1/manifests"},{"name":"v1.42.0","sha":"e7f0635c17ac5c178b0960cb35f849edd3cf69ef","kind":"commit","published_at":"2024-02-27T19:05:24.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.42.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.42.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.42.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.42.0/manifests"},{"name":"v1.41.2","sha":"a4096676abe3f00b4924267449bb52086569e302","kind":"commit","published_at":"2024-02-01T19:24:16.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.41.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.41.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.41.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.41.2/manifests"},{"name":"v1.41.1","sha":"8f0163f3f4cf573037b6697e15ab55a0dc910f57","kind":"commit","published_at":"2024-01-19T23:05:04.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.41.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.41.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.41.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.41.1/manifests"},{"name":"v1.41.0","sha":"38d699f64f841481750eb8035f467babba868943","kind":"commit","published_at":"2024-01-16T18:27:23.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.41.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.41.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.41.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.41.0/manifests"},{"name":"v1.40.1","sha":"268942037a054f7259ecee178645c9067a8ee2e1","kind":"commit","published_at":"2023-11-28T18:48:24.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.40.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.40.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.40.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.40.1/manifests"},{"name":"v1.40.0","sha":"b8949166dc08e0ae499d08bec004a3f1a4e26ec8","kind":"commit","published_at":"2023-11-16T21:30:01.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.40.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.40.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.40.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.40.0/manifests"},{"name":"v1.39.0","sha":"3049d99bc8c76799817585a359502368bd6ba366","kind":"commit","published_at":"2023-10-11T20:58:19.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.39.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.39.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.39.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.39.0/manifests"},{"name":"v1.38.1","sha":"47434209996cfd19d7c913caa7ddf8e1377e1d99","kind":"commit","published_at":"2023-09-21T19:38:34.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.38.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.38.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.38.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.38.1/manifests"},{"name":"v1.38.0","sha":"da997ee8c07176b13d0c388c54320ea7ace3a9bd","kind":"commit","published_at":"2023-09-13T22:55:57.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.38.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.38.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.38.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.38.0/manifests"},{"name":"v1.37.1","sha":"60696ef493fe5e35de00efcded77d60b81548599","kind":"commit","published_at":"2023-08-17T20:17:39.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.37.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.37.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.37.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.37.1/manifests"},{"name":"v1.37.0","sha":"2c9e02a80097074eb1e2f0634636dd214a3ce8ac","kind":"commit","published_at":"2023-08-10T22:35:25.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.37.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.37.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.37.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.37.0/manifests"},{"name":"v1.36.2","sha":"1f983acac0dadc831adfb9982d593e107d4e68dd","kind":"commit","published_at":"2023-07-24T17:43:17.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.36.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.36.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.36.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.36.2/manifests"},{"name":"v1.36.1","sha":"4417b78552d9ffa568bf3307bfce0fb723c0526a","kind":"commit","published_at":"2023-07-14T14:39:42.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.36.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.36.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.36.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.36.1/manifests"},{"name":"v1.36.0","sha":"74ec8c243a52a56196fd18bb54e26046d89d1d48","kind":"commit","published_at":"2023-07-11T05:10:57.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.36.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.36.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.36.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.36.0/manifests"},{"name":"v1.35.1","sha":"472e0eeda28cf824aecf3cf057c863811b354cb2","kind":"commit","published_at":"2023-06-14T22:27:34.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.35.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.35.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.35.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.35.1/manifests"},{"name":"v1.35.0","sha":"a2798c3221f7ae8ce878dcabc18b4147435082c0","kind":"commit","published_at":"2023-06-08T22:20:46.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.35.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.35.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.35.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.35.0/manifests"},{"name":"v1.34.3","sha":"f11873a8950ec622e8294093ee19455d2afb89cc","kind":"commit","published_at":"2023-05-24T23:07:04.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.34.3","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.34.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.34.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.34.3/manifests"},{"name":"v1.34.2","sha":"2f3d88f3d5795d108dc814f90db94eca058eaa35","kind":"commit","published_at":"2023-05-23T20:55:41.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.34.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.34.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.34.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.34.2/manifests"},{"name":"v1.34.1","sha":"fe024dd5e3c66fad1233b23f745dffaaeccabac1","kind":"commit","published_at":"2023-05-23T03:21:08.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.34.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.34.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.34.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.34.1/manifests"},{"name":"v1.34.0","sha":"4aee014caf4d5f14700a18dfc25014812e1f4414","kind":"commit","published_at":"2023-05-20T00:28:10.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.34.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.34.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.34.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.34.0/manifests"},{"name":"v1.33.0","sha":"b64516e146994612d37662921d4b40acfafaaabf","kind":"commit","published_at":"2023-04-27T01:26:19.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.33.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.33.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.33.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.33.0/manifests"},{"name":"v1.32.3","sha":"679ee37d0f637344369e425ea2dd45effea546a9","kind":"commit","published_at":"2023-04-11T00:51:05.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.32.3","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.32.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.32.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.32.3/manifests"},{"name":"v1.32.2","sha":"ed7a560ad2c2b510bf44faa9a49540ade1bea2be","kind":"commit","published_at":"2023-04-03T20:22:59.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.32.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.32.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.32.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.32.2/manifests"},{"name":"v1.32.1","sha":"847b546794c0bb3fa8cf9eda8561fe88ce774bb1","kind":"commit","published_at":"2023-03-25T03:57:16.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.32.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.32.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.32.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.32.1/manifests"},{"name":"v1.32.0","sha":"f622457b33ec145d45cbf59186511def430a04ce","kind":"commit","published_at":"2023-03-22T20:30:05.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.32.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.32.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.32.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.32.0/manifests"},{"name":"v1.31.2","sha":"6155a501902450e7da412d03ba4bc199bc4104ad","kind":"commit","published_at":"2023-03-02T17:43:23.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.31.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.31.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.31.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.31.2/manifests"},{"name":"v1.31.1","sha":"81d23946e823091590be82271f7dabcd356196af","kind":"commit","published_at":"2023-02-23T03:01:42.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.31.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.31.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.31.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.31.1/manifests"},{"name":"v1.31.0","sha":"4413b01e4038191b0d0d83f1549a2e3d2cf05f46","kind":"commit","published_at":"2023-02-21T18:36:06.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.31.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.31.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.31.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.31.0/manifests"},{"name":"v1.30.0","sha":"aea542f7a283a305eb10b1d2cfec29b5742eacc9","kind":"commit","published_at":"2023-01-24T21:06:01.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.30.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.30.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.30.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.30.0/manifests"},{"name":"v1.29.2","sha":"64a18acf816ff937cce1407c2a9e6086523b35a8","kind":"commit","published_at":"2023-01-06T07:49:42.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.29.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.29.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.29.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.29.2/manifests"},{"name":"v1.29.1","sha":"0bdca2b913631d80a8b10c17b26b80208009e516","kind":"commit","published_at":"2022-12-21T21:19:32.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.29.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.29.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.29.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.29.1/manifests"},{"name":"v1.29.0","sha":"00895e36d42a5d2dc570780bed389c871fdea77a","kind":"commit","published_at":"2022-12-16T19:21:51.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.29.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.29.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.29.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.29.0/manifests"},{"name":"v1.28.1","sha":"9ede66abd60797cd516484fb0bf172b76b7aec5b","kind":"commit","published_at":"2022-11-23T00:01:10.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.28.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.28.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.28.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.28.1/manifests"},{"name":"v1.28.0","sha":"8f9bf0f0ac4187c57051673c56c6d80088379a61","kind":"commit","published_at":"2022-11-16T00:22:38.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.28.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.28.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.28.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.28.0/manifests"},{"name":"v1.27.1","sha":"fde19c16521fed219721d0a8d0679122596d58b3","kind":"commit","published_at":"2022-10-12T05:20:07.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.27.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.27.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.27.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.27.1/manifests"},{"name":"v1.27.0","sha":"af0d2936ac6e8780214c251ff58a5e7d6eba41ca","kind":"commit","published_at":"2022-10-07T17:20:11.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.27.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.27.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.27.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.27.0/manifests"},{"name":"v1.26.1","sha":"46fb26d13a8207a9c12fb0cff19eda5fd2bdfdcb","kind":"commit","published_at":"2022-09-27T05:42:17.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.26.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.26.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.26.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.26.1/manifests"},{"name":"v1.26.0","sha":"5321921712683fdd9c57a9c990b2e394e24be12e","kind":"commit","published_at":"2022-09-19T20:55:33.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.26.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.26.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.26.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.26.0/manifests"},{"name":"v1.25.2","sha":"396487fc4c19bf27554eac9beea9db135e96cfb4","kind":"commit","published_at":"2022-09-06T22:06:41.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.25.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.25.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.25.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.25.2/manifests"},{"name":"v1.25.1","sha":"1c54ead16303aaca06e6831b0956ce30a323320b","kind":"commit","published_at":"2022-08-23T18:36:18.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.25.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.25.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.25.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.25.1/manifests"},{"name":"v1.25.0","sha":"bb54c04096885e33fc67216d16aad2d1978ce5f7","kind":"commit","published_at":"2022-08-10T22:41:05.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.25.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.25.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.25.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.25.0/manifests"},{"name":"v1.24.2","sha":"0eb8a7008926bca2212a5313745c52d35765720c","kind":"commit","published_at":"2022-07-29T12:06:56.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.24.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.24.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.24.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.24.2/manifests"},{"name":"v1.24.1","sha":"c08a7d81b3737349f17e35a5ea5f09c7da8f96ee","kind":"commit","published_at":"2022-07-26T11:16:15.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.24.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.24.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.24.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.24.1/manifests"},{"name":"v1.24.0","sha":"1cd6fd359673f479410144ff819bd2e4c6936591","kind":"commit","published_at":"2022-07-21T22:12:21.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.24.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.24.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.24.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.24.0/manifests"},{"name":"v1.23.4","sha":"ba2035b0319faf296519085b70be6bcae25bdf57","kind":"commit","published_at":"2022-07-16T00:23:37.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.23.4","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.23.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.23.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.23.4/manifests"},{"name":"v1.23.3","sha":"6365c0fe6c00eee5e55248db5f1bae33d81867a7","kind":"commit","published_at":"2022-07-13T11:49:53.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.23.3","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.23.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.23.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.23.3/manifests"},{"name":"v1.23.2","sha":"56e04df8aa6f59acd91b92b089ec181119ae2168","kind":"commit","published_at":"2022-07-07T18:27:53.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.23.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.23.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.23.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.23.2/manifests"},{"name":"v1.23.1","sha":"a19117aa6b2cae1f67dd586b958b341b823b1c96","kind":"commit","published_at":"2022-06-30T16:53:22.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.23.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.23.1/manifests"},{"name":"v1.23.0","sha":"5c6335edda9b1ed225c9933e21d4384e59cbcac6","kind":"commit","published_at":"2022-06-27T17:38:20.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.23.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.23.0/manifests"},{"name":"v1.22.2","sha":"41c6aaf4267c2225bb306cdce5ac65706dac4e85","kind":"commit","published_at":"2022-05-21T02:26:06.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.22.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.22.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.22.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.22.2/manifests"},{"name":"v1.22.1","sha":"28d4804a7052ebfd32ba8189d6c7b2a6f4b211dc","kind":"commit","published_at":"2022-05-17T10:00:26.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.22.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.22.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.22.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.22.1/manifests"},{"name":"v1.22.0","sha":"9177bd1614f9b76dafce7be64566916baee57597","kind":"commit","published_at":"2022-05-12T18:13:57.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.22.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.22.0/manifests"},{"name":"v1.21.1","sha":"2e29fd431b66147cd6cdb47ef202c1172f505cbf","kind":"commit","published_at":"2022-04-18T20:49:41.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.21.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.21.1/manifests"},{"name":"v1.21.0","sha":"953003882ae6b73c3f69dd0862a7a6e2943072e1","kind":"commit","published_at":"2022-04-12T00:04:32.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.21.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.21.0/manifests"},{"name":"v1.20.2","sha":"0f359b9840df7a9e2af5da3624899f42abcb2e3c","kind":"commit","published_at":"2022-03-31T22:46:06.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.20.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.20.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.20.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.20.2/manifests"},{"name":"v1.20.1","sha":"18de7bd61d549d1811205d4c4d9c07dc476ccc1f","kind":"commit","published_at":"2022-03-23T18:49:37.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.20.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.20.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.20.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.20.1/manifests"},{"name":"v1.20.0","sha":"16c4ae08317b0338d5bb1b62d57b140294b7996a","kind":"commit","published_at":"2022-03-14T20:29:25.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.20.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.20.0/manifests"},{"name":"v1.19.2","sha":"c3a035560a0113f85c686d03a9c022d2e32b42a6","kind":"commit","published_at":"2022-02-23T23:00:31.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.19.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.19.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.19.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.19.2/manifests"},{"name":"v1.19.1","sha":"d22bde13c4c6ffa58758cf0b25bb96c676ef5655","kind":"commit","published_at":"2022-02-15T21:25:32.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.19.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.19.1/manifests"},{"name":"v1.19.0","sha":"03501cfdb2d9ba510150077ea721cdb716b6d0ba","kind":"commit","published_at":"2022-02-11T21:18:20.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.19.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.19.0/manifests"},{"name":"v1.18.1","sha":"d44042f07f0c0963dd97b5dd838019ca35b6dbc0","kind":"commit","published_at":"2022-01-27T22:08:28.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.18.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.18.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.18.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.18.1/manifests"},{"name":"v1.18.0","sha":"de5f5021ede9a7e78f504707e433f82b4686884b","kind":"commit","published_at":"2022-01-19T19:31:49.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.18.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.18.0/manifests"},{"name":"v1.18.0-rc1","sha":"2745a18a481d5d23b9f96d6c254673948599bca3","kind":"commit","published_at":"2022-01-14T12:01:55.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.18.0-rc1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.18.0-rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.18.0-rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.18.0-rc1/manifests"},{"name":"v1.17.2","sha":"b6eb917c29b743e8d63004ae7a24974404461198","kind":"commit","published_at":"2022-01-10T01:29:10.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.17.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.17.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.17.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.17.2/manifests"},{"name":"v1.17.1","sha":"f802c27d0983ed40a0d678a61897e85c872bd076","kind":"commit","published_at":"2021-12-02T02:16:37.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.17.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.17.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.17.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.17.1/manifests"},{"name":"v1.17.0","sha":"30e15ad36f011c7adf5bad86beadd50ca93b01b8","kind":"commit","published_at":"2021-11-30T15:17:46.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.17.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.17.0/manifests"},{"name":"v1.17.0-rc1","sha":"baa8dcbbe21dd4934ee5cdb8ad83ce9e1bad67fb","kind":"commit","published_at":"2021-11-17T18:45:19.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.17.0-rc1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.17.0-rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.17.0-rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.17.0-rc1/manifests"},{"name":"v1.16.3","sha":"4803e0fe72f560a14ac34661aeea5072255dd116","kind":"commit","published_at":"2021-11-02T00:49:39.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.16.3","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.16.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.16.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.16.3/manifests"},{"name":"v1.16.2","sha":"5e0f327a608ed1df0261b22f5b9f0b091c695163","kind":"commit","published_at":"2021-10-27T08:12:30.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.16.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.16.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.16.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.16.2/manifests"},{"name":"v1.16.1","sha":"5e12a4a52e71c439fac1a2372e297633ef850cb1","kind":"commit","published_at":"2021-10-22T22:15:33.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.16.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.16.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.16.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.16.1/manifests"},{"name":"v1.16.0","sha":"945bbf282865d6862a63b9740c5501ecd77d7773","kind":"commit","published_at":"2021-10-21T01:53:47.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.16.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.16.0/manifests"},{"name":"v1.15.2","sha":"edfbf031d9775c232e057cfec1407bda665d903a","kind":"commit","published_at":"2021-10-05T17:38:01.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.15.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.15.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.15.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.15.2/manifests"},{"name":"v1.15.1","sha":"86e652af803280fccadb6c8d41edd8391eca02dd","kind":"commit","published_at":"2021-09-30T20:16:16.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.15.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.15.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.15.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.15.1/manifests"},{"name":"v1.15.0","sha":"d379db5ae0c6d20f9026dfa06639d9b906f909e0","kind":"commit","published_at":"2021-09-16T18:30:28.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.15.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.15.0/manifests"},{"name":"v1.14.1","sha":"51d6f6987d15f158d90cfb343dc8a019fa2432b6","kind":"commit","published_at":"2021-08-24T16:52:06.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.14.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.14.1/manifests"},{"name":"v1.14.0","sha":"b9a182314fb80e6e5b7416ca7aee10fd9a4d5370","kind":"commit","published_at":"2021-08-13T18:08:04.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.14.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.14.0/manifests"},{"name":"v1.13.1","sha":"474c62eb430599b803e4be77cc4a8af115415277","kind":"commit","published_at":"2021-07-29T00:42:19.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.13.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.13.1/manifests"},{"name":"v1.13.0","sha":"d4b295d4812f861cfaf665f1fe410d5b2c108404","kind":"commit","published_at":"2021-07-21T15:39:57.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.13.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.13.0/manifests"},{"name":"v1.12.3","sha":"027b294bd7538bba8632cf3dfc20600601ad3bb5","kind":"commit","published_at":"2021-06-26T06:10:19.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.12.3","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.12.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.12.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.12.3/manifests"},{"name":"v1.12.2","sha":"226a5269c241b3f67271afbaa2b60ef7fde2528c","kind":"commit","published_at":"2021-06-11T18:24:52.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.12.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.12.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.12.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.12.2/manifests"},{"name":"v1.12.1","sha":"770cbb9f0b902fe8c1e7edeb2bf096db28034d0d","kind":"commit","published_at":"2021-06-09T21:20:06.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.12.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.12.1/manifests"},{"name":"v1.12.0","sha":"3b669e11eb6ccc05f8987cae71213577394e760e","kind":"commit","published_at":"2021-06-08T20:59:28.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.12.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.12.0/manifests"},{"name":"v1.11.1","sha":"57c3011b2b678f7125388570875a5b3411322f6a","kind":"commit","published_at":"2021-05-20T06:07:12.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.11.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.11.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.11.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.11.1/manifests"},{"name":"v1.11.0","sha":"f496c65491fd5148f2430f4aee4bb167ba8d44d4","kind":"commit","published_at":"2021-05-06T19:57:02.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.11.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.11.0/manifests"},{"name":"v1.10.0","sha":"aeaa9fe9e1ca1b903bcbd47938abf26dcce4fb57","kind":"commit","published_at":"2021-03-24T05:27:54.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.10.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.10.0/manifests"},{"name":"v1.9.2","sha":"e42fe217e5bb1b962ac8cba67f6d7dfb8952d590","kind":"commit","published_at":"2021-03-09T23:25:11.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.9.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.9.2/manifests"},{"name":"v1.9.1","sha":"92bbdbed6511f5b7340664a3b3d593c4741f66da","kind":"commit","published_at":"2021-02-25T03:52:30.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.9.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.9.1/manifests"},{"name":"v1.9.0","sha":"765f7355a38e63c0e2d259b0a66196e7dd7b0b76","kind":"commit","published_at":"2021-02-22T23:51:41.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.9.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.9.0/manifests"},{"name":"v1.8.1","sha":"970e230fcba1c62aad9ffb8ddb858e18caa478a0","kind":"commit","published_at":"2021-02-10T19:20:33.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.8.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.8.1/manifests"},{"name":"v1.8.0","sha":"0e216bc33a68f93b90349872559bfb2540d94cdd","kind":"commit","published_at":"2021-01-20T22:14:42.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.8.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.8.0/manifests"},{"name":"v1.7.1","sha":"bbb411a99c69c89f03253e3be08b767a482d3c9b","kind":"commit","published_at":"2020-12-22T02:03:50.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.7.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.7.1/manifests"},{"name":"v1.7.0","sha":"5d69549d610326ae8b7159107d1857237a3ab188","kind":"commit","published_at":"2020-12-15T18:54:33.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.7.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.7.0/manifests"},{"name":"v1.6.2","sha":"691c38bf00d6c44d27711a1b790baec1d1348d9d","kind":"commit","published_at":"2020-11-17T02:56:41.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.6.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.6.2/manifests"},{"name":"v1.6.1","sha":"3c9a6c41ed58b885064a3007e6df12768912b191","kind":"commit","published_at":"2020-11-13T02:28:35.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.6.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.6.1/manifests"},{"name":"v1.6.0","sha":"1230866be60e8555f70c0a590e0dfd28f7942255","kind":"commit","published_at":"2020-11-12T21:08:30.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.6.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.6.0/manifests"},{"name":"v1.5.2","sha":"7145faedd48de559aee0a3ac99a0ff489ed45ed9","kind":"commit","published_at":"2020-10-27T21:17:20.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.5.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.5.2/manifests"},{"name":"v1.5.1","sha":"0b7976a2790e1c067994c563dcdbd30ba11b2c2b","kind":"commit","published_at":"2020-10-14T22:32:21.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.5.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.5.1/manifests"},{"name":"v1.5.0","sha":"8f6cef8b11e19a4eaf2ad4fdf9294e8293895128","kind":"commit","published_at":"2020-10-13T01:23:40.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.5.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.5.0/manifests"},{"name":"v1.4.2","sha":"747e73626e99bea5dda1a266aeed928040614a15","kind":"commit","published_at":"2020-09-23T23:32:39.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.4.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e79eada2be11b4495e16e486bfb503cfdacbf78b","kind":"commit","published_at":"2020-09-18T18:49:23.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.4.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"014096a28630756814f59ffb8d8f9ddae871f507","kind":"commit","published_at":"2020-09-10T22:14:45.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.4.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"d01f63b82a2dace201eaf473ff352e0a60bb1cc7","kind":"commit","published_at":"2020-08-05T23:45:17.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.3.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.3.0/manifests"},{"name":"v1.2.1","sha":"a00f0d4e60b56264d1d5c216b541b70af7c8b502","kind":"commit","published_at":"2020-07-13T18:21:46.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.2.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"c5f38a2642a2bdb19c52d55bdf9d73e389662613","kind":"commit","published_at":"2020-07-06T23:55:24.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.2.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.2.0/manifests"},{"name":"v1.1.1","sha":"cbfc954f7a4091d48c1fd8482ed2a234fc6546f3","kind":"commit","published_at":"2020-06-11T02:01:08.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.1.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"93f287c0b2f026e814cce89a99cfba6c1c7b770c","kind":"commit","published_at":"2020-06-09T21:26:43.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.1.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.1.0/manifests"},{"name":"v1.0.2","sha":"b6d66a4949b84eb7e41bb55d8c37c7d1189165fa","kind":"commit","published_at":"2020-05-14T21:08:25.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.0.2","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"73410537d73636adf45c3e3ba2e44bdb7b44e589","kind":"commit","published_at":"2020-05-06T17:44:38.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.0.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"56efbabaaa9ee182af24bb97ddea3c8bc726876f","kind":"commit","published_at":"2020-05-06T04:40:06.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v1.0.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v1.0.0/manifests"},{"name":"v0.18.0","sha":"27b4fb636938b33221dee9260ec205ab2cf3778d","kind":"commit","published_at":"2020-05-05T22:10:06.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.18.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.18.0/manifests"},{"name":"v0.17.0","sha":"24b777a8cd26829eae44cd9879e528e8e11e0f7d","kind":"commit","published_at":"2020-05-05T05:28:33.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.17.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.17.0/manifests"},{"name":"v0.16.0","sha":"502d670edf9135f88a79a913d8589ee237673c2f","kind":"commit","published_at":"2020-05-01T00:44:19.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.16.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.16.0/manifests"},{"name":"v0.15.0","sha":"906d117e50dd620aec9dd162095256c3e85eeea4","kind":"commit","published_at":"2020-04-24T03:27:48.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.15.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.15.0/manifests"},{"name":"v0.14.0","sha":"cf1fd795a6efa00a1bbe0642e38bca2e1f65fe18","kind":"commit","published_at":"2020-04-23T01:09:50.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.14.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.14.0/manifests"},{"name":"v0.13.0","sha":"17e645ad34dee827881d67fd8634f8c3e907c539","kind":"commit","published_at":"2020-04-08T23:53:44.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.13.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.13.0/manifests"},{"name":"v0.12.1","sha":"a7ca2fef098af5a34dabaf7d21dc6ac8ff125e36","kind":"commit","published_at":"2020-03-24T18:28:07.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.12.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"08b94ee67ba0da4f92f52a70f62cbf5e6398ab2b","kind":"commit","published_at":"2020-03-24T17:40:02.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.12.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.12.0/manifests"},{"name":"v0.11.1","sha":"2037e01b06e38750fbd116c59c6991af458922a3","kind":"commit","published_at":"2020-02-15T03:13:08.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.11.1","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.11.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.11.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.11.1/manifests"},{"name":"v0.11.0","sha":"f9887e073dde4e610c5c856d318da45e0daca217","kind":"commit","published_at":"2020-02-14T02:56:54.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.11.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.11.0/manifests"},{"name":"v0.10.0","sha":"6a97216fff0f495e97445ea67536852f6fc11fa8","kind":"commit","published_at":"2020-02-01T02:40:44.000Z","download_url":"https://codeload.github.com/microsoft/playwright/tar.gz/v0.10.0","html_url":"https://github.com/microsoft/playwright/releases/tag/v0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fplaywright/tags/v0.10.0/manifests"}]},"repo_metadata_updated_at":"2024-12-12T18:16:22.157Z","dependent_packages_count":2919,"downloads":27305240,"downloads_period":"last-month","dependent_repos_count":12585,"rankings":{"downloads":0.08988264092272996,"dependent_repos_count":0.2396678797613439,"dependent_packages_count":0.04369095433404206,"stargazers_count":0.11620662941004734,"forks_count":0.6861365640235105,"docker_downloads_count":0.08381764660399123,"average":0.20990038584261084},"purl":"pkg:npm/%40playwright/test","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/@playwright/test","docker_dependents_count":1089,"docker_downloads_count":492169066,"usage_url":"https://repos.ecosyste.ms/usage/npm/@playwright/test","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/@playwright/test/dependencies","status":null,"funding_links":[],"critical":true,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@playwright%2Ftest/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@playwright%2Ftest/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@playwright%2Ftest/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@playwright%2Ftest/related_packages","maintainers":[{"uuid":"pavelfeldman","login":"pavelfeldman","name":null,"email":"pavel.feldman@gmail.com","url":null,"packages_count":44,"html_url":"https://www.npmjs.com/~pavelfeldman","role":null,"created_at":"2022-11-09T03:50:53.067Z","updated_at":"2022-11-09T03:50:53.067Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/pavelfeldman/packages"},{"uuid":"yurys","login":"yurys","name":null,"email":"yury.semikhatsky@gmail.com","url":null,"packages_count":23,"html_url":"https://www.npmjs.com/~yurys","role":null,"created_at":"2022-11-09T03:50:53.074Z","updated_at":"2022-11-09T03:50:53.074Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/yurys/packages"},{"uuid":"mxschmitt","login":"mxschmitt","name":null,"email":"max@schmitt.mx","url":null,"packages_count":34,"html_url":"https://www.npmjs.com/~mxschmitt","role":null,"created_at":"2023-12-13T16:41:48.448Z","updated_at":"2023-12-13T16:41:48.448Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/mxschmitt/packages"},{"uuid":"dgozman-ms","login":"dgozman-ms","name":null,"email":"dgozman@microsoft.com","url":null,"packages_count":20,"html_url":"https://www.npmjs.com/~dgozman-ms","role":null,"created_at":"2023-12-13T16:41:48.312Z","updated_at":"2023-12-13T16:41:48.312Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/dgozman-ms/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5006533,"maintainers_count":1012930,"namespaces_count":295512,"keywords_count":700181,"github":"npm","metadata":{"funded_packages_count":150239},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2025-06-06T05:58:05.971Z","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":5854,"unique_repositories_count_past_30_days":645,"recent_issues":[{"uuid":"4556687756","node_id":"PR_kwDORwQ7Hc7hDGts","number":66,"state":"open","title":"deps: bump the production-dependencies group across 1 directory with 12 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-31T05:39:35.000Z","updated_at":"2026-05-31T05:43:26.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps: bump","group_name":"production-dependencies","update_count":12,"packages":[{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tanstack/react-virtual","old_version":"3.13.24","new_version":"3.13.26","repository_url":"https://github.com/TanStack/virtual"},{"name":"date-fns","old_version":"4.1.0","new_version":"4.4.0","repository_url":"https://github.com/date-fns/date-fns"},{"name":"stripe","old_version":"22.1.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"zustand","old_version":"5.0.13","new_version":"5.0.14","repository_url":"https://github.com/pmndrs/zustand"},{"name":"@react-native-async-storage/async-storage","old_version":"3.0.2","new_version":"3.1.1","repository_url":"https://github.com/react-native-async-storage/async-storage"},{"name":"@react-navigation/bottom-tabs","old_version":"7.15.13","new_version":"7.16.2","repository_url":"https://github.com/react-navigation/react-navigation"},{"name":"@react-navigation/native","old_version":"7.2.4","new_version":"7.2.5","repository_url":"https://github.com/react-navigation/react-navigation"},{"name":"@supabase/supabase-js","old_version":"2.105.4","new_version":"2.106.2","repository_url":"https://github.com/supabase/supabase-js"},{"name":"react-native-safe-area-context","old_version":"5.7.0","new_version":"5.8.0","repository_url":"https://github.com/AppAndFlow/react-native-safe-area-context"},{"name":"react-native-screens","old_version":"4.24.0","new_version":"4.25.2","repository_url":"https://github.com/software-mansion/react-native-screens"},{"name":"@clerk/nextjs","old_version":"7.3.3","new_version":"7.4.2","repository_url":"https://github.com/clerk/javascript"}],"path":null,"ecosystem":"npm"},"body":"Bumps the production-dependencies group with 12 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [@tanstack/react-virtual](https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual) | `3.13.24` | `3.13.26` |\n| [date-fns](https://github.com/date-fns/date-fns) | `4.1.0` | `4.4.0` |\n| [stripe](https://github.com/stripe/stripe-node) | `22.1.1` | `22.2.0` |\n| [zustand](https://github.com/pmndrs/zustand) | `5.0.13` | `5.0.14` |\n| [@react-native-async-storage/async-storage](https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage) | `3.0.2` | `3.1.1` |\n| [@react-navigation/bottom-tabs](https://github.com/react-navigation/react-navigation/tree/HEAD/packages/bottom-tabs) | `7.15.13` | `7.16.2` |\n| [@react-navigation/native](https://github.com/react-navigation/react-navigation/tree/HEAD/packages/native) | `7.2.4` | `7.2.5` |\n| [@supabase/supabase-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js) | `2.105.4` | `2.106.2` |\n| [react-native-safe-area-context](https://github.com/AppAndFlow/react-native-safe-area-context) | `5.7.0` | `5.8.0` |\n| [react-native-screens](https://github.com/software-mansion/react-native-screens) | `4.24.0` | `4.25.2` |\n| [@clerk/nextjs](https://github.com/clerk/javascript/tree/HEAD/packages/nextjs) | `7.3.3` | `7.4.2` |\n\n\nUpdates `@playwright/test` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-virtual` from 3.13.24 to 3.13.26\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/virtual/releases\"\u003e@​tanstack/react-virtual's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-virtual\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.13.26\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.16.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-virtual\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.13.25\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace the \u003ccode\u003euseReducer(() =\u0026gt; ({}), {})\u003c/code\u003e force-rerender pattern with an (\u003ca href=\"https://redirect.github.com/TanStack/virtual/pull/1168\"\u003e#1168\u003c/a\u003e)\nincrementing number counter. Same semantics (every dispatch changes the\nreducer state, forcing a render); zero per-dispatch object allocation.\nTrivial individual cost, but eliminates one steady-state GC source on\nscroll-heavy apps.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.15.0\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/TanStack/virtual/blob/main/packages/react-virtual/CHANGELOG.md\"\u003e@​tanstack/react-virtual's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.13.26\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.16.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.13.25\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace the \u003ccode\u003euseReducer(() =\u0026gt; ({}), {})\u003c/code\u003e force-rerender pattern with an (\u003ca href=\"https://redirect.github.com/TanStack/virtual/pull/1168\"\u003e#1168\u003c/a\u003e)\nincrementing number counter. Same semantics (every dispatch changes the\nreducer state, forcing a render); zero per-dispatch object allocation.\nTrivial individual cost, but eliminates one steady-state GC source on\nscroll-heavy apps.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.15.0\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/TanStack/virtual/commit/693d915e0670cbba5c3e42d0d2a46f085dd7d44e\"\u003e\u003ccode\u003e693d915\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e feat: support end-anchored virtualizers (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/949180be8adf66ea8428b326db72ebad42d5b4c3\"\u003e\u003ccode\u003e949180b\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e perf: virtual-core rewrite for mount/measure-storm, plus iOS Safari handling ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/3374977c623cd95eb4cdb44ad44eb94677d65c1e\"\u003e\u003ccode\u003e3374977\u003c/code\u003e\u003c/a\u003e chore(angular-virtual)!: upgrade Angular to v19 (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/TanStack/virtual/commits/@tanstack/react-virtual@3.13.26/packages/react-virtual\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `date-fns` from 4.1.0 to 4.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/date-fns/date-fns/releases\"\u003edate-fns's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.0\u003c/h2\u003e\n\u003cp\u003eThis release revisits the approach to CDN usage and introduces a new package, \u003ccode\u003e@date-fns/cdn\u003c/code\u003e and deprecates the \u003ccode\u003edate-fns\u003c/code\u003e CDN scripts. It allowed reducing the zipped package size from \u003ccode\u003e5.83 MB\u003c/code\u003e down to \u003ccode\u003e3.96 MB\u003c/code\u003e without introducing any breaking changes.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003ev5.0.0-alpha.0\u003c/code\u003e where CDN scripts are completely removed from \u003ccode\u003edate-fns\u003c/code\u003e the change is more significant and brings the zipped package size down to \u003ccode\u003e2.89 MB\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIt is just the first step in optimizing the package size. Expect further size reduction in the future v4 and v5 versions.\u003c/p\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eDEPRECATED\u003c/strong\u003e: The \u003ccode\u003edate-fns\u003c/code\u003e CDN scripts are now deprecated and will be removed in the next major release. Please switch to the new \u003ccode\u003e@date-fns/cdn\u003c/code\u003e package for CDN usage.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved CDN source maps to reduce the package size. If you rely on them, please switch to the new \u003ccode\u003e@date-fns/cdn\u003c/code\u003e package that still includes them.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003cp\u003eKudos to \u003ca href=\"https://github.com/ImRodry\"\u003e\u003ccode\u003e@​ImRodry\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/puneetdixit200\"\u003e\u003ccode\u003e@​puneetdixit200\u003c/code\u003e\u003c/a\u003e for their contributions.\u003c/p\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed missing modularized optimization fallback (\u003ca href=\"https://x.com/kossnocorp/status/1731181274579325260\"\u003efor Next.js and others\u003c/a\u003e). See \u003ca href=\"https://x.com/kossnocorp/status/1731181274579325260\"\u003e#4193\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003ept\u003c/code\u003e locale first day of week to be Sunday. See \u003ca href=\"https://redirect.github.com/date-fns/date-fns/pull/4195\"\u003e#4195\u003c/a\u003e by \u003ca href=\"https://github.com/ImRodry\"\u003e\u003ccode\u003e@​ImRodry\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003ezh-CN\u003c/code\u003e, \u003ccode\u003ezh-HK\u003c/code\u003e, and \u003ccode\u003ezh-TW\u003c/code\u003e locale month parsing for October, November, and December. See \u003ca href=\"https://redirect.github.com/date-fns/date-fns/pull/4194\"\u003e#4194\u003c/a\u003e by \u003ca href=\"https://github.com/puneetdixit200\"\u003e\u003ccode\u003e@​puneetdixit200\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed type definitions missing in v4.2.0 due to TypeScript misconfiguration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.0\u003c/h2\u003e\n\u003cp\u003eThis is a minor release in all senses, it only includes documentation updates (first of many) that points to the new \u003ca href=\"https://date-fns.org/you-dont-need-date-fns\"\u003eYou Don't Need date-fns*\u003c/a\u003e page.\u003c/p\u003e\n\u003cp\u003e* Not really\u003c/p\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded Temporal API references to the JSDoc annotations of \u003ccode\u003eadd\u003c/code\u003e, \u003ccode\u003eaddBusinessDays\u003c/code\u003e, and \u003ccode\u003eaddDays\u003c/code\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/date-fns/date-fns/commit/cd53d2538cfa318404eff7ade6449b49bf34562e\"\u003e\u003ccode\u003ecd53d25\u003c/code\u003e\u003c/a\u003e Promote to v4.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/d948ec151d395096de8a45fbcd9b1e79c26fda25\"\u003e\u003ccode\u003ed948ec1\u003c/code\u003e\u003c/a\u003e Preserve but deprecate CDN versions for v4, set up v5 with polyfills\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/ee65753cfc5d73cc9acd43aaa8012b3b233ddf32\"\u003e\u003ccode\u003eee65753\u003c/code\u003e\u003c/a\u003e Add root \u003ccode\u003emise :format\u003c/code\u003e task\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/9f5bdf5d5a944772aa9668c4fa6567d89ca01fa9\"\u003e\u003ccode\u003e9f5bdf5\u003c/code\u003e\u003c/a\u003e Add positional argument to \u003ccode\u003etest/smoke.sh\u003c/code\u003e script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/651ead6faf331515814803faf457f5b9db7c9729\"\u003e\u003ccode\u003e651ead6\u003c/code\u003e\u003c/a\u003e Split CDN bundles into separate \u003ccode\u003e@​date-fns/cdn\u003c/code\u003e package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/224c1a209967dad359a2c2adc9a5b0ef72e4fe7b\"\u003e\u003ccode\u003e224c1a2\u003c/code\u003e\u003c/a\u003e Deprecate type tests as attw hangs on date-fns package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/7bb2842dac3d579f84b2de62f015335fb3ac734a\"\u003e\u003ccode\u003e7bb2842\u003c/code\u003e\u003c/a\u003e Switch \u003ccode\u003ePACKAGE_OUTPUT_PATH\u003c/code\u003e to \u003ccode\u003e--dist\u003c/code\u003e flag in the package build script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/b6ad5acc5ab0b40777a2695ec074c2ffcd982763\"\u003e\u003ccode\u003eb6ad5ac\u003c/code\u003e\u003c/a\u003e Add flags to control package build script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/424a783de1fd974bcdbe907c9c5eb5154e9db29f\"\u003e\u003ccode\u003e424a783\u003c/code\u003e\u003c/a\u003e Fix docs release after moving to monorepo setup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/f95bcf18b53e6832b2c575c24c98654a24f52699\"\u003e\u003ccode\u003ef95bcf1\u003c/code\u003e\u003c/a\u003e (docs): Add missing \u003ccode\u003etsx\u003c/code\u003e dependency\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/date-fns/date-fns/compare/v4.1.0...v4.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `stripe` from 22.1.1 to 22.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/stripe/stripe-node/releases\"\u003estripe's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev22.2.0\u003c/h2\u003e\n\u003cp\u003eThis release changes the pinned API version to 2026-05-27.dahlia.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/stripe/stripe-node/pull/2710\"\u003e#2710\u003c/a\u003e Update generated code\n\u003cul\u003e\n\u003cli\u003eAdd support for new resource \u003ccode\u003eV2.Commerce.ProductCatalogImport\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecreate\u003c/code\u003e and \u003ccode\u003eretrieve\u003c/code\u003e methods on resource \u003ccode\u003eV2.Commerce.ProductCatalogImport\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebizum_payments\u003c/code\u003e and \u003ccode\u003escalapay_payments\u003c/code\u003e on \u003ccode\u003eAccount.capabilities\u003c/code\u003e, \u003ccode\u003eAccountCreateParams.capabilities\u003c/code\u003e, and \u003ccode\u003eAccountUpdateParams.capabilities\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eautomatic_transfer_rules_by_currency\u003c/code\u003e on \u003ccode\u003eBalanceSettingUpdateParams.payments.payouts\u003c/code\u003e and \u003ccode\u003eBalanceSettings.payments.payouts\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003estart_of_day\u003c/code\u003e on \u003ccode\u003eBalanceSettingUpdateParams.payments.settlement_timing\u003c/code\u003e and \u003ccode\u003eBalanceSettings.payments.settlement_timing\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003edescription\u003c/code\u003e on \u003ccode\u003eChargeCreateParams.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebizum\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details\u003c/code\u003e, \u003ccode\u003eConfirmationToken.payment_method_preview\u003c/code\u003e, \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003ePaymentIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationUpdateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfiguration\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethod\u003c/code\u003e, \u003ccode\u003ePaymentRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003eSetupIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentUpdateParams.payment_method_data\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_options\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003escalapay\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details\u003c/code\u003e, \u003ccode\u003eCheckout.Session.payment_method_options\u003c/code\u003e, \u003ccode\u003eCheckout.SessionCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eConfirmationToken.payment_method_preview\u003c/code\u003e, \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003ePaymentIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationUpdateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfiguration\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethod\u003c/code\u003e, \u003ccode\u003ePaymentRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003eRefund.destination_details\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003emandate\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details.twint\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details.twint\u003c/code\u003e, and \u003ccode\u003ePaymentRecord.payment_method_details.twint\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eCheckout.SessionCreateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.excluded_payment_method_types\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.excluded_payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eChange type of \u003ccode\u003eCheckout.SessionCreateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e from \u003ccode\u003eliteral('none')\u003c/code\u003e to \u003ccode\u003eenum('none'|'off_session')\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enum \u003ccode\u003eCheckout.SessionCreateParams.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Change type of \u003ccode\u003eCheckout.Session.payment_method_options.twint.setup_future_usage\u003c/code\u003e and \u003ccode\u003ePaymentIntent.payment_method_options.twint.setup_future_usage\u003c/code\u003e from \u003ccode\u003eliteral('none')\u003c/code\u003e to \u003ccode\u003eenum('none'|'off_session')\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data.type\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_data.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eConfirmationToken.payment_method_preview.type\u003c/code\u003e and \u003ccode\u003ePaymentMethod.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eCustomerListPaymentMethodsParams.type\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams.type\u003c/code\u003e, and \u003ccode\u003ePaymentMethodListParams.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecredited_items\u003c/code\u003e on \u003ccode\u003eInvoiceItem.proration_details\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003etwint\u003c/code\u003e on enums \u003ccode\u003eInvoiceCreateParams.payment_settings.payment_method_types\u003c/code\u003e, \u003ccode\u003eInvoiceUpdateParams.payment_settings.payment_method_types\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.payment_settings.payment_method_types\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.payment_settings.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ediscountable\u003c/code\u003e on \u003ccode\u003eInvoiceCreatePreviewParams.schedule_details.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionSchedule.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionScheduleCreateParams.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionScheduleUpdateParams.phases[].add_invoice_items[]\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.add_invoice_items[]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebilling_schedules\u003c/code\u003e on \u003ccode\u003eInvoiceCreatePreviewParams.subscription_details\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams\u003c/code\u003e, \u003ccode\u003eSubscriptionUpdateParams\u003c/code\u003e, and \u003ccode\u003eSubscription\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003emax_billed_until\u003c/code\u003e on enums \u003ccode\u003eInvoiceCreatePreviewParams.subscription_details.cancel_at\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.cancel_at\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.cancel_at\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eamount_paid_off_stripe\u003c/code\u003e on \u003ccode\u003eInvoice\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003etwint\u003c/code\u003e on enums \u003ccode\u003eInvoice.payment_settings.payment_method_types\u003c/code\u003e and \u003ccode\u003eSubscription.payment_settings.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003etwint\u003c/code\u003e on \u003ccode\u003eMandate.payment_method_details\u003c/code\u003e and \u003ccode\u003eSetupAttempt.payment_method_details\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003emetadata\u003c/code\u003e on \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003eSubscription.pending_update\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003epayment_data\u003c/code\u003e on \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003ePaymentIntent.excluded_payment_method_types\u003c/code\u003e and \u003ccode\u003eSetupIntent.excluded_payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eblik_authorize\u003c/code\u003e on \u003ccode\u003ePaymentIntent.next_action\u003c/code\u003e and \u003ccode\u003eSetupIntent.next_action\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003epayment_method_options\u003c/code\u003e on \u003ccode\u003ePaymentLinkCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentLinkUpdateParams\u003c/code\u003e, and \u003ccode\u003ePaymentLink\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003ebizum\u003c/code\u003e on enums \u003ccode\u003ePaymentLinkCreateParams.payment_method_types\u003c/code\u003e and \u003ccode\u003ePaymentLinkUpdateParams.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003ebizum\u003c/code\u003e on enum \u003ccode\u003ePaymentLink.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eactive\u003c/code\u003e on \u003ccode\u003ePaymentMethodConfigurationListParams\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebilled_until\u003c/code\u003e on \u003ccode\u003eSubscriptionItem\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ediscount\u003c/code\u003e and \u003ccode\u003ediscounts\u003c/code\u003e on \u003ccode\u003eSubscription.pending_update\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on \u003ccode\u003eTerminal.ConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003eTerminal.ConfigurationUpdateParams\u003c/code\u003e, and \u003ccode\u003eTerminal.Configuration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003esimulated_verifone_m425\u003c/code\u003e, \u003ccode\u003esimulated_verifone_p630\u003c/code\u003e, \u003ccode\u003esimulated_verifone_ux700\u003c/code\u003e, \u003ccode\u003esimulated_verifone_v660p\u003c/code\u003e, \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on enum \u003ccode\u003eTerminal.ReaderListParams.device_type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eapi_error\u003c/code\u003e and \u003ccode\u003eprint_content\u003c/code\u003e on \u003ccode\u003eTerminal.Reader.action\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eprint_content\u003c/code\u003e on enum \u003ccode\u003eTerminal.Reader.action.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003esimulated_verifone_m425\u003c/code\u003e, \u003ccode\u003esimulated_verifone_p630\u003c/code\u003e, \u003ccode\u003esimulated_verifone_ux700\u003c/code\u003e, \u003ccode\u003esimulated_verifone_v660p\u003c/code\u003e, \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on enum \u003ccode\u003eTerminal.Reader.device_type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecustomer\u003c/code\u003e on \u003ccode\u003eTestHelpers.TestClockCreateParams\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003e2026-05-27.dahlia\u003c/code\u003e on enum \u003ccode\u003eWebhookEndpointCreateParams.api_version\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003esigner\u003c/code\u003e on \u003ccode\u003eV2.Core.Account.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.Account.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountCreateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountCreateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountTokenCreateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountTokenCreateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountUpdateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, and \u003ccode\u003eV2.Core.AccountUpdateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eazure_event_grid\u003c/code\u003e on \u003ccode\u003eV2.Core.EventDestinationCreateParams\u003c/code\u003e and \u003ccode\u003eV2.Core.EventDestination\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eno_azure_partner_topic_exists\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestination.status_details.disabled.reason\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eazure_event_grid\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestination.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003eazure_event_grid\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestinationCreateParams.type\u003c/code\u003e\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/stripe/stripe-node/blob/master/CHANGELOG.md\"\u003estripe's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e22.2.0 - 2026-05-27\u003c/h2\u003e\n\u003cp\u003eThis release changes the pinned API version to 2026-05-27.dahlia.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/stripe/stripe-node/pull/2710\"\u003e#2710\u003c/a\u003e Update generated code\n\u003cul\u003e\n\u003cli\u003eAdd support for new resource \u003ccode\u003eV2.Commerce.ProductCatalogImport\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecreate\u003c/code\u003e and \u003ccode\u003eretrieve\u003c/code\u003e methods on resource \u003ccode\u003eV2.Commerce.ProductCatalogImport\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebizum_payments\u003c/code\u003e and \u003ccode\u003escalapay_payments\u003c/code\u003e on \u003ccode\u003eAccount.capabilities\u003c/code\u003e, \u003ccode\u003eAccountCreateParams.capabilities\u003c/code\u003e, and \u003ccode\u003eAccountUpdateParams.capabilities\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eautomatic_transfer_rules_by_currency\u003c/code\u003e on \u003ccode\u003eBalanceSettingUpdateParams.payments.payouts\u003c/code\u003e and \u003ccode\u003eBalanceSettings.payments.payouts\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003estart_of_day\u003c/code\u003e on \u003ccode\u003eBalanceSettingUpdateParams.payments.settlement_timing\u003c/code\u003e and \u003ccode\u003eBalanceSettings.payments.settlement_timing\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003edescription\u003c/code\u003e on \u003ccode\u003eChargeCreateParams.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebizum\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details\u003c/code\u003e, \u003ccode\u003eConfirmationToken.payment_method_preview\u003c/code\u003e, \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003ePaymentIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationUpdateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfiguration\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethod\u003c/code\u003e, \u003ccode\u003ePaymentRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003eSetupIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentUpdateParams.payment_method_data\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_options\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003escalapay\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details\u003c/code\u003e, \u003ccode\u003eCheckout.Session.payment_method_options\u003c/code\u003e, \u003ccode\u003eCheckout.SessionCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eConfirmationToken.payment_method_preview\u003c/code\u003e, \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003ePaymentIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationUpdateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfiguration\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethod\u003c/code\u003e, \u003ccode\u003ePaymentRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003eRefund.destination_details\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003emandate\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details.twint\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details.twint\u003c/code\u003e, and \u003ccode\u003ePaymentRecord.payment_method_details.twint\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eCheckout.SessionCreateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.excluded_payment_method_types\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.excluded_payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eChange type of \u003ccode\u003eCheckout.SessionCreateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e from \u003ccode\u003eliteral('none')\u003c/code\u003e to \u003ccode\u003eenum('none'|'off_session')\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enum \u003ccode\u003eCheckout.SessionCreateParams.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Change type of \u003ccode\u003eCheckout.Session.payment_method_options.twint.setup_future_usage\u003c/code\u003e and \u003ccode\u003ePaymentIntent.payment_method_options.twint.setup_future_usage\u003c/code\u003e from \u003ccode\u003eliteral('none')\u003c/code\u003e to \u003ccode\u003eenum('none'|'off_session')\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data.type\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_data.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eConfirmationToken.payment_method_preview.type\u003c/code\u003e and \u003ccode\u003ePaymentMethod.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eCustomerListPaymentMethodsParams.type\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams.type\u003c/code\u003e, and \u003ccode\u003ePaymentMethodListParams.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecredited_items\u003c/code\u003e on \u003ccode\u003eInvoiceItem.proration_details\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003etwint\u003c/code\u003e on enums \u003ccode\u003eInvoiceCreateParams.payment_settings.payment_method_types\u003c/code\u003e, \u003ccode\u003eInvoiceUpdateParams.payment_settings.payment_method_types\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.payment_settings.payment_method_types\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.payment_settings.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ediscountable\u003c/code\u003e on \u003ccode\u003eInvoiceCreatePreviewParams.schedule_details.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionSchedule.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionScheduleCreateParams.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionScheduleUpdateParams.phases[].add_invoice_items[]\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.add_invoice_items[]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebilling_schedules\u003c/code\u003e on \u003ccode\u003eInvoiceCreatePreviewParams.subscription_details\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams\u003c/code\u003e, \u003ccode\u003eSubscriptionUpdateParams\u003c/code\u003e, and \u003ccode\u003eSubscription\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003emax_billed_until\u003c/code\u003e on enums \u003ccode\u003eInvoiceCreatePreviewParams.subscription_details.cancel_at\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.cancel_at\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.cancel_at\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eamount_paid_off_stripe\u003c/code\u003e on \u003ccode\u003eInvoice\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003etwint\u003c/code\u003e on enums \u003ccode\u003eInvoice.payment_settings.payment_method_types\u003c/code\u003e and \u003ccode\u003eSubscription.payment_settings.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003etwint\u003c/code\u003e on \u003ccode\u003eMandate.payment_method_details\u003c/code\u003e and \u003ccode\u003eSetupAttempt.payment_method_details\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003emetadata\u003c/code\u003e on \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003eSubscription.pending_update\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003epayment_data\u003c/code\u003e on \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003ePaymentIntent.excluded_payment_method_types\u003c/code\u003e and \u003ccode\u003eSetupIntent.excluded_payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eblik_authorize\u003c/code\u003e on \u003ccode\u003ePaymentIntent.next_action\u003c/code\u003e and \u003ccode\u003eSetupIntent.next_action\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003epayment_method_options\u003c/code\u003e on \u003ccode\u003ePaymentLinkCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentLinkUpdateParams\u003c/code\u003e, and \u003ccode\u003ePaymentLink\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003ebizum\u003c/code\u003e on enums \u003ccode\u003ePaymentLinkCreateParams.payment_method_types\u003c/code\u003e and \u003ccode\u003ePaymentLinkUpdateParams.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003ebizum\u003c/code\u003e on enum \u003ccode\u003ePaymentLink.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eactive\u003c/code\u003e on \u003ccode\u003ePaymentMethodConfigurationListParams\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebilled_until\u003c/code\u003e on \u003ccode\u003eSubscriptionItem\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ediscount\u003c/code\u003e and \u003ccode\u003ediscounts\u003c/code\u003e on \u003ccode\u003eSubscription.pending_update\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on \u003ccode\u003eTerminal.ConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003eTerminal.ConfigurationUpdateParams\u003c/code\u003e, and \u003ccode\u003eTerminal.Configuration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003esimulated_verifone_m425\u003c/code\u003e, \u003ccode\u003esimulated_verifone_p630\u003c/code\u003e, \u003ccode\u003esimulated_verifone_ux700\u003c/code\u003e, \u003ccode\u003esimulated_verifone_v660p\u003c/code\u003e, \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on enum \u003ccode\u003eTerminal.ReaderListParams.device_type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eapi_error\u003c/code\u003e and \u003ccode\u003eprint_content\u003c/code\u003e on \u003ccode\u003eTerminal.Reader.action\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eprint_content\u003c/code\u003e on enum \u003ccode\u003eTerminal.Reader.action.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003esimulated_verifone_m425\u003c/code\u003e, \u003ccode\u003esimulated_verifone_p630\u003c/code\u003e, \u003ccode\u003esimulated_verifone_ux700\u003c/code\u003e, \u003ccode\u003esimulated_verifone_v660p\u003c/code\u003e, \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on enum \u003ccode\u003eTerminal.Reader.device_type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecustomer\u003c/code\u003e on \u003ccode\u003eTestHelpers.TestClockCreateParams\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003e2026-05-27.dahlia\u003c/code\u003e on enum \u003ccode\u003eWebhookEndpointCreateParams.api_version\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003esigner\u003c/code\u003e on \u003ccode\u003eV2.Core.Account.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.Account.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountCreateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountCreateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountTokenCreateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountTokenCreateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountUpdateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, and \u003ccode\u003eV2.Core.AccountUpdateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eazure_event_grid\u003c/code\u003e on \u003ccode\u003eV2.Core.EventDestinationCreateParams\u003c/code\u003e and \u003ccode\u003eV2.Core.EventDestination\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eno_azure_partner_topic_exists\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestination.status_details.disabled.reason\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eazure_event_grid\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestination.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003eazure_event_grid\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestinationCreateParams.type\u003c/code\u003e\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/22c7136dd1ac5ad63e905b9a560a37fb00993fc8\"\u003e\u003ccode\u003e22c7136\u003c/code\u003e\u003c/a\u003e Bump version to 22.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/312514c819ffd2dc690f5e0265b98667c4211857\"\u003e\u003ccode\u003e312514c\u003c/code\u003e\u003c/a\u003e Update generated code (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2710\"\u003e#2710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/c68495777fcb5af914688663d13f26285c79ab6b\"\u003e\u003ccode\u003ec684957\u003c/code\u003e\u003c/a\u003e Emit warning when \u003ccode\u003estripe-notify\u003c/code\u003e header is present in response (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2723\"\u003e#2723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/6daca1e550c6019ef3bf3d766b5f50d7bd101efd\"\u003e\u003ccode\u003e6daca1e\u003c/code\u003e\u003c/a\u003e Add V2List and V2ListPromise types for v2 list endpoints (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2717\"\u003e#2717\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/044c68e8908d5c93db7a76ca93a07557d5148420\"\u003e\u003ccode\u003e044c68e\u003c/code\u003e\u003c/a\u003e Add WinterTC compatibility ESLint rule (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2715\"\u003e#2715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/185f336fe42aba87a1eb8533299e4a760e82021e\"\u003e\u003ccode\u003e185f336\u003c/code\u003e\u003c/a\u003e Export manually maintained types for OAuthToken and OAuth param classes (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2711\"\u003e#2711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/0a91ffd7b2e41dea5698eea7013673764f7574a8\"\u003e\u003ccode\u003e0a91ffd\u003c/code\u003e\u003c/a\u003e Exported types for nested param classes (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2712\"\u003e#2712\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/stripe/stripe-node/compare/v22.1.1...v22.2.0\"\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 `@react-native-async-storage/async-storage` from 3.0.2 to 3.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/react-native-async-storage/async-storage/releases\"\u003e@​react-native-async-storage/async-storage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eAsync Storage v3.1.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eb751ff4: bump native dependencies for sqlite and room\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAsync Storage v3.1.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efa6d5bc: Shared Storage artifact published to maven central\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis eliminates the extra step in installation for android.\u003c/p\u003e\n\u003ch2\u003eAsync Storage v3.0.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cp\u003e350e149:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCorrectly handle \u0026quot;other\u0026quot; error for Apple platforms\u003c/li\u003e\n\u003cli\u003eAndroid to use limited parallelism from DispatcherIO, instead of using dedicated thread pools per database\u003c/li\u003e\n\u003cli\u003eWhen providing null for a key, for some reason, throw an error instead of crashing the app\u003c/li\u003e\n\u003cli\u003eMake example RN example work again\u003c/li\u003e\n\u003cli\u003eUse concurrent hashmap instead of hashmap + synchronization combo for Storage initialization on Android\u003c/li\u003e\n\u003cli\u003eDouble check lock for legacy storage initialization on android\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/react-native-async-storage/async-storage/blob/main/packages/async-storage/CHANGELOG.md\"\u003e@​react-native-async-storage/async-storage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.1.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eb751ff4: bump native dependencies for sqlite and room\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.1.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efa6d5bc: Shared Storage artifact published to maven central\u003c/p\u003e\n\u003cp\u003eThis eliminates the extra step in installation for android.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e350e149: - Correctly handle \u0026quot;other\u0026quot; error for Apple platforms\n\u003cul\u003e\n\u003cli\u003eAndroid to use limited parallelism from DispatcherIO, instead of using dedicated thread pools per database\u003c/li\u003e\n\u003cli\u003eWhen providing null for a key, for some reason, throw an error instead of crashing the app\u003c/li\u003e\n\u003cli\u003eMake example RN example work again\u003c/li\u003e\n\u003cli\u003eUse concurrent hashmap instead of hashmap + synchronization combo for Storage initialization on Android\u003c/li\u003e\n\u003cli\u003eDouble check lock for legacy storage initialization on android\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/react-native-async-storage/async-storage/commit/4535ff0728207221a5831ed59dcebab1e4fba33e\"\u003e\u003ccode\u003e4535ff0\u003c/code\u003e\u003c/a\u003e release: version packages (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1309\"\u003e#1309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/b751ff4ad97d306ba7f0b694b10e0280e9eb80ac\"\u003e\u003ccode\u003eb751ff4\u003c/code\u003e\u003c/a\u003e chore(shared-storage): Bump native dependencies (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1308\"\u003e#1308\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/cb61cac1c2613d8f4caa89e34e4dccbd9958a2cf\"\u003e\u003ccode\u003ecb61cac\u003c/code\u003e\u003c/a\u003e release: version packages (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/fa6d5bc0f46d11edb5fbcf326f699b3061571d92\"\u003e\u003ccode\u003efa6d5bc\u003c/code\u003e\u003c/a\u003e feat: Use Shared Storage from Maven Central (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1301\"\u003e#1301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/d5fb009fb4950ca2b4acc4ad789a7268b901b23b\"\u003e\u003ccode\u003ed5fb009\u003c/code\u003e\u003c/a\u003e feat: Distribute shared-storage via Maven Central (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1299\"\u003e#1299\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/5f005c61a1d15007bc082b584e85c7be49d9aa7b\"\u003e\u003ccode\u003e5f005c6\u003c/code\u003e\u003c/a\u003e release: version packages (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1293\"\u003e#1293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/350e149aed3e36e6e036a2d9b35ce32bb5c8c638\"\u003e\u003ccode\u003e350e149\u003c/code\u003e\u003c/a\u003e fix: Thread-safety fixes, broken example app (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1292\"\u003e#1292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/react-native-async-storage/async-storage/commits/@react-native-async-storage/async-storage@3.1.1/packages/async-storage\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@react-navigation/bottom-tabs` from 7.15.13 to 7.16.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/react-navigation/react-navigation/releases\"\u003e@​react-navigation/bottom-tabs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​react-navigation/bottom-tabs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.16.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@7.16.1...@react-navigation/bottom-tabs@7.16.2\"\u003e7.16.2\u003c/a\u003e (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edefault lazy to true for native tabs to avoid flicker (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/ca4ac561a7f1d13cbec675a5e6af056041a6cfcf\"\u003eca4ac56\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​react-navigation/bottom-tabs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.16.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@7.15.13...@react-navigation/bottom-tabs@7.16.0\"\u003e7.16.0\u003c/a\u003e (2026-05-11)\u003c/h1\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edefault \u003ccode\u003emultiselectable\u003c/code\u003e to \u003ccode\u003eundefined\u003c/code\u003e (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/cd466d48aeefec6e513bb6c8d5103d15f9d73f7f\"\u003ecd466d4\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd ability to prevent tab bar selection (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/1930fa0d3c8d266d8b288b2da92c04f758f82571\"\u003e1930fa0\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eupdate native tabs to use the new API in react-native-screens (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/a12db9657f5f2af2a0aaa71193e35382dc72a623\"\u003ea12db96\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\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/react-navigation/react-navigation/blob/@react-navigation/bottom-tabs@7.16.2/packages/bottom-tabs/CHANGELOG.md\"\u003e@​react-navigation/bottom-tabs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@7.16.1...@react-navigation/bottom-tabs@7.16.2\"\u003e7.16.2\u003c/a\u003e (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edefault lazy to true for native tabs to avoid flicker (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/ca4ac561a7f1d13cbec675a5e6af056041a6cfcf\"\u003eca4ac56\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@7.16.0...@react-navigation/bottom-tabs@7.16.1\"\u003e7.16.1\u003c/a\u003e (2026-05-14)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​react-navigation/bottom-tabs\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@7.15.13...@react-navigation/bottom-tabs@7.16.0\"\u003e7.16.0\u003c/a\u003e (2026-05-11)\u003c/h1\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edefault \u003ccode\u003emultiselectable\u003c/code\u003e to \u003ccode\u003eundefined\u003c/code\u003e (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/cd466d48aeefec6e513bb6c8d5103d15f9d73f7f\"\u003ecd466d4\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd ability to prevent tab bar selection (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/1930fa0d3c8d266d8b288b2da92c04f758f82571\"\u003e1930fa0\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eupdate native tabs to use the new API in react-native-screens (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/a12db9657f5f2af2a0aaa71193e35382dc72a623\"\u003ea12db96\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\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/react-navigation/react-navigation/commit/b89bba20b9d6d935224dd5afa287f62a627b6c7e\"\u003e\u003ccode\u003eb89bba2\u003c/code\u003e\u003c/a\u003e chore: publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/ca4ac561a7f1d13cbec675a5e6af056041a6cfcf\"\u003e\u003ccode\u003eca4ac56\u003c/code\u003e\u003c/a\u003e fix: default lazy to true for native tabs to avoid flicker\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/8e0ce2be919f84b3d9fa2d2db2587e0a7a4c50ce\"\u003e\u003ccode\u003e8e0ce2b\u003c/code\u003e\u003c/a\u003e chore: publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/b5b1f7cc35c17b5ef113db0fdcd27794f52a48cc\"\u003e\u003ccode\u003eb5b1f7c\u003c/code\u003e\u003c/a\u003e chore: publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/cd466d48aeefec6e513bb6c8d5103d15f9d73f7f\"\u003e\u003ccode\u003ecd466d4\u003c/code\u003e\u003c/a\u003e fix: default \u003ccode\u003emultiselectable\u003c/code\u003e to \u003ccode\u003eundefined\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/1930fa0d3c8d266d8b288b2da92c04f758f82571\"\u003e\u003ccode\u003e1930fa0\u003c/code\u003e\u003c/a\u003e feat: add ability to prevent tab bar selection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/a12db9657f5f2af2a0aaa71193e35382dc72a623\"\u003e\u003ccode\u003ea12db96\u003c/code\u003e\u003c/a\u003e feat: update native tabs to use the new API in react-native-screens\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/react-navigation/react-navigation/commits/@react-navigation/bottom-tabs@7.16.2/packages/bottom-tabs\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@react-navigation/native` from 7.2.4 to 7.2.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/react-navigation/react-navigation/blob/@react-navigation/native@7.2.5/packages/native/CHANGELOG.md\"\u003e@​react-navigation/native's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/native@7.2.4...@react-navigation/native@7.2.5\"\u003e7.2.5\u003c/a\u003e (2026-05-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​react-navigation/native\u003c/code\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/react-navigation/react-navigation/commit/b89bba20b9d6d935224dd5afa287f62a627b6c7e\"\u003e\u003ccode\u003eb89bba2\u003c/code\u003e\u003c/a\u003e chore: publish\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/react-navigation/react-navigation/commits/@react-navigation/native@7.2.5/packages/native\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@supabase/supabase-js` from 2.105.4 to 2.106.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/supabase/supabase-js/releases\"\u003e@​supabase/supabase-js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.106.2\u003c/h2\u003e\n\u003ch2\u003e2.106.2 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eauth:\u003c/strong\u003e restore signup user response (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2391\"\u003e#2391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emisc:\u003c/strong\u003e add react-native export condition for Hermes-safe resolution (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2393\"\u003e#2393\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMyroslav Hryhschenko \u003ca href=\"https://github.com/BLOCKMATERIAL\"\u003e\u003ccode\u003e@​BLOCKMATERIAL\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVaibhav \u003ca href=\"https://github.com/7ttp\"\u003e\u003ccode\u003e@​7ttp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.106.2-canary.1\u003c/h2\u003e\n\u003ch2\u003e2.106.2-canary.1 (2026-05-22)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003ch2\u003ev2.106.2-canary.0\u003c/h2\u003e\n\u003ch2\u003e2.106.2-canary.0 (2026-05-22)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eauth:\u003c/strong\u003e restore signup user response (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2391\"\u003e#2391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emisc:\u003c/strong\u003e add react-native export condition for Hermes-safe resolution (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2393\"\u003e#2393\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMyroslav Hryhschenko \u003ca href=\"https://github.com/BLOCKMATERIAL\"\u003e\u003ccode\u003e@​BLOCKMATERIAL\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVaibhav \u003ca href=\"https://github.com/7ttp\"\u003e\u003ccode\u003e@​7ttp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.106.2-beta.2\u003c/h2\u003e\n\u003ch2\u003e2.106.2-beta.2 (2026-05-22)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003ch2\u003ev2.106.2-beta.0\u003c/h2\u003e\n\u003ch2\u003e2.106.2-beta.0 (2026-05-21)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003ch2\u003ev2.106.1\u003c/h2\u003e\n\u003ch2\u003e2.106.1 (2026-05-20)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eauth:\u003c/strong\u003e encode client-id in oauth requests (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2383\"\u003e#2383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emisc:\u003c/strong\u003e hide dynamic import from hermesc (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2381\"\u003e#2381\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/supabase/supabase-js/blob/master/packages/core/supabase-js/CHANGELOG.md\"\u003e@​supabase/supabase-js's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.106.2 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003emisc:\u003c/strong\u003e add react-native export condition for Hermes-safe resolution (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2393\"\u003e#2393\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMyroslav Hryhschenko \u003ca href=\"https://github.com/BLOCKMATERIAL\"\u003e\u003ccode\u003e@​BLOCKMATERIAL\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.106.1 (2026-05-20)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003emisc:\u003c/strong\u003e hide dynamic import from hermesc (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2381\"\u003e#2381\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKaterina Skroumpelou \u003ca href=\"https://github.com/mandarini\"\u003e\u003ccode\u003e@​mandarini\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.106.0 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003esupabase:\u003c/strong\u003e W3C/OpenTelemetry trace context propagation (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2163\"\u003e#2163\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erelease:\u003c/strong\u003e mark \u003ccode\u003e@​supabase/tracing\u003c/code\u003e private and snapshot it for JSR (\u003ca href=\"https://redirect.github...\n\n_Description has been truncated_","html_url":"https://github.com/crewcircle/crewRoster/pull/66","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/crewcircle%2FcrewRoster/issues/66","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/66/packages"},{"uuid":"4556332784","node_id":"PR_kwDOResPl87hCDlK","number":68,"state":"open","title":"chore(deps): bump the dependencies group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-31T02:24:37.000Z","updated_at":"2026-05-31T02:24:45.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"dependencies","update_count":27,"packages":[{"name":"posthog-js","old_version":"1.373.4","new_version":"1.376.4","repository_url":"https://github.com/PostHog/posthog-js"},{"name":"posthog-node","old_version":"5.33.7","new_version":"5.35.6","repository_url":"https://github.com/PostHog/posthog-js"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@rolldown/binding-linux-x64-gnu","old_version":"1.0.0-rc.17","new_version":"1.0.3","repository_url":"https://github.com/rolldown/rolldown"},{"name":"@rollup/rollup-linux-x64-gnu","old_version":"4.60.1","new_version":"4.60.4","repository_url":"https://github.com/rollup/rollup"},{"name":"@sentry/cli-linux-x64","old_version":"2.58.5","new_version":"3.4.3","repository_url":"https://github.com/getsentry/sentry-cli"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@clerk/localizations","old_version":"4.6.0","new_version":"4.7.0","repository_url":"https://github.com/clerk/javascript"},{"name":"@clerk/nextjs","old_version":"7.3.1","new_version":"7.4.2","repository_url":"https://github.com/clerk/javascript"},{"name":"@sentry/nextjs","old_version":"10.51.0","new_version":"10.55.0","repository_url":"https://github.com/getsentry/sentry-javascript"},{"name":"@supabase/supabase-js","old_version":"2.105.3","new_version":"2.106.2","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@upstash/qstash","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/upstash/qstash-js"},{"name":"date-fns","old_version":"4.1.0","new_version":"4.4.0","repository_url":"https://github.com/date-fns/date-fns"},{"name":"framer-motion","old_version":"12.38.0","new_version":"12.40.0","repository_url":"https://github.com/motiondivision/motion"},{"name":"lucide-react","old_version":"1.14.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-big-calendar","old_version":"1.19.4","new_version":"1.19.6","repository_url":"https://github.com/bigcalendar/react-big-calendar"},{"name":"resend","old_version":"6.12.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"22.1.0","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"swiper","old_version":"12.1.4","new_version":"12.2.0","repository_url":"https://github.com/nolimits4web/Swiper"},{"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.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@types/node","old_version":"25.6.0","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"eslint","old_version":"9.39.4","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-config-next","old_version":"16.2.4","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"vitest","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"}],"path":null,"ecosystem":"npm"},"body":"Bumps the dependencies group with 25 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [posthog-js](https://github.com/PostHog/posthog-js) | `1.373.4` | `1.376.4` |\n| [posthog-node](https://github.com/PostHog/posthog-js/tree/HEAD/packages/node) | `5.33.7` | `5.35.6` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [@rolldown/binding-linux-x64-gnu](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown) | `1.0.0-rc.17` | `1.0.3` |\n| [@rollup/rollup-linux-x64-gnu](https://github.com/rollup/rollup) | `4.60.1` | `4.60.4` |\n| [@sentry/cli-linux-x64](https://github.com/getsentry/sentry-cli) | `2.58.5` | `3.4.3` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.4` | `4.3.0` |\n| [@clerk/localizations](https://github.com/clerk/javascript/tree/HEAD/packages/localizations) | `4.6.0` | `4.7.0` |\n| [@clerk/nextjs](https://github.com/clerk/javascript/tree/HEAD/packages/nextjs) | `7.3.1` | `7.4.2` |\n| [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) | `10.51.0` | `10.55.0` |\n| [@supabase/supabase-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js) | `2.105.3` | `2.106.2` |\n| [@upstash/qstash](https://github.com/upstash/qstash-js) | `2.10.1` | `2.11.0` |\n| [date-fns](https://github.com/date-fns/date-fns) | `4.1.0` | `4.4.0` |\n| [framer-motion](https://github.com/motiondivision/motion) | `12.38.0` | `12.40.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.14.0` | `1.17.0` |\n| [react-big-calendar](https://github.com/bigcalendar/react-big-calendar) | `1.19.4` | `1.19.6` |\n| [resend](https://github.com/resend/resend-node) | `6.12.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `22.1.0` | `22.2.0` |\n| [swiper](https://github.com/nolimits4web/Swiper) | `12.1.4` | `12.2.0` |\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.4` | `4.3.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.6.0` | `25.9.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.4` | `10.4.1` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.2.4` | `16.2.6` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.5` | `4.1.7` |\n\n\nUpdates `posthog-js` from 1.373.4 to 1.376.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PostHog/posthog-js/releases\"\u003eposthog-js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eposthog-js@1.376.4\u003c/h2\u003e\n\u003ch2\u003e1.376.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/PostHog/posthog-js/pull/3685\"\u003e#3685\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/f59f35ac5a6a0aa98be5f3ea3b88370df8d398aa\"\u003e\u003ccode\u003ef59f35a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ioannisj\"\u003e\u003ccode\u003e@​ioannisj\u003c/code\u003e\u003c/a\u003e! - fix(cookieless): enable request queue when opting out in \u003ccode\u003eon_reject\u003c/code\u003e mode. When using \u003ccode\u003ecookieless_mode: \u0026quot;on_reject\u0026quot;\u003c/code\u003e, calling \u003ccode\u003eopt_out_capturing()\u003c/code\u003e correctly switched the SDK into cookieless capturing but never enabled the \u003ccode\u003eRequestQueue\u003c/code\u003e — so batched events were enqueued but never flushed over the network. At init time the queue was not started because consent was \u003ccode\u003ePENDING\u003c/code\u003e and \u003ccode\u003eis_capturing()\u003c/code\u003e returned \u003ccode\u003efalse\u003c/code\u003e; \u003ccode\u003eopt_out_capturing()\u003c/code\u003e is the first moment capturing becomes active but was missing the \u003ccode\u003e_start_queue_if_opted_in()\u003c/code\u003e call that \u003ccode\u003eopt_in_capturing()\u003c/code\u003e already had.\n(2026-05-28)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3692\"\u003e#3692\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/f01cd939e096820b84666a463a61775ef69ce4c4\"\u003e\u003ccode\u003ef01cd93\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ksvat\"\u003e\u003ccode\u003e@​ksvat\u003c/code\u003e\u003c/a\u003e! - fix(replay): take a fresh full snapshot after session ID rotates via \u003ccode\u003eforcedIdleReset\u003c/code\u003e. Previously, when the session manager's idle enforcement timer rotated the session id, the recorder tore down rrweb and set \u003ccode\u003e_isIdle = 'unknown'\u003c/code\u003e before the new session id was observed. Neither restart path then fired (the \u003ccode\u003e_onSessionIdCallback\u003c/code\u003e guard only restarted when \u003ccode\u003e_isIdle === true\u003c/code\u003e, and \u003ccode\u003e_updateWindowAndSessionIds\u003c/code\u003e could not run with rrweb stopped), so the new session received only incremental mutations until a later snapshot — leaving the player stuck on \u0026quot;Buffering\u0026quot;. The restart guard now also fires when rrweb isn't running.\n(2026-05-28)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3691\"\u003e#3691\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/cc71f3fa1f87838c28a68e593cd3f274f63db397\"\u003e\u003ccode\u003ecc71f3f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ksvat\"\u003e\u003ccode\u003e@​ksvat\u003c/code\u003e\u003c/a\u003e! - fix(replay): ship \u003ccode\u003eph-no-capture\u003c/code\u003e absolute-position fix from \u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3678\"\u003e#3678\u003c/a\u003e to \u003ccode\u003eposthog-js\u003c/code\u003e. The original changeset only bumped \u003ccode\u003e@posthog/rrweb\u003c/code\u003e and \u003ccode\u003e@posthog/rrweb-snapshot\u003c/code\u003e; because \u003ccode\u003eposthog-js\u003c/code\u003e depends on \u003ccode\u003e@posthog/rrweb\u003c/code\u003e via \u003ccode\u003eworkspace:*\u003c/code\u003e, the cascade did not bump \u003ccode\u003eposthog-js\u003c/code\u003e, so the rebuilt bundle containing the fix was not published. This changeset re-publishes \u003ccode\u003eposthog-js\u003c/code\u003e with the fix.\n(2026-05-28)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3695\"\u003e#3695\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/e1ff722bf0bd333ffdf5d077f8f60893aaf7ef5e\"\u003e\u003ccode\u003ee1ff722\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ksvat\"\u003e\u003ccode\u003e@​ksvat\u003c/code\u003e\u003c/a\u003e! - chore(replay): expose \u003ccode\u003e$sdk_debug_rrweb_attached\u003c/code\u003e and \u003ccode\u003e$sdk_debug_rrweb_start_attempted\u003c/code\u003e debug properties on captured events. Today the SDK already stamps several \u003ccode\u003e$sdk_debug_*\u003c/code\u003e properties (start reason, linked-flag trigger status, recording status) that report the SDK's \u003cem\u003eintent\u003c/em\u003e to record — they all flip to \u0026quot;active\u0026quot; as soon as the state machine evaluates the configured triggers. None of them observe whether rrweb actually attached and is producing events. The new booleans close that gap: \u003ccode\u003e$sdk_debug_rrweb_start_attempted\u003c/code\u003e is set when \u003ccode\u003e_startRecorder()\u003c/code\u003e is first entered, and \u003ccode\u003e$sdk_debug_rrweb_attached\u003c/code\u003e reflects whether \u003ccode\u003e_stopRrweb\u003c/code\u003e is currently a non-falsy stop handle (i.e. \u003ccode\u003errwebRecord({...})\u003c/code\u003e returned successfully and the recorder has not been torn down). No behavior change — this only adds two booleans to the existing \u003ccode\u003esdkDebugProperties\u003c/code\u003e channel, used to diagnose cases where a session reports \u003ccode\u003etrigger_activated\u003c/code\u003e / \u003ccode\u003erecording_status: active\u003c/code\u003e but no \u003ccode\u003e$snapshot\u003c/code\u003e data is ever uploaded.\n(2026-05-28)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/types\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.376.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-js@1.376.3\u003c/h2\u003e\n\u003ch2\u003e1.376.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3649\"\u003e#3649\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/9cac1f650ed994a067bbffc5ec16b6d4dc65254f\"\u003e\u003ccode\u003e9cac1f6\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/marandaneto\"\u003e\u003ccode\u003e@​marandaneto\u003c/code\u003e\u003c/a\u003e! - Improve console log serialization performance for large objects.\n(2026-05-27)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/types\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.376.3\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-js@1.376.2\u003c/h2\u003e\n\u003ch2\u003e1.376.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3667\"\u003e#3667\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/cafa9cc786a07613677ec16f2fc9f0c4e833a12c\"\u003e\u003ccode\u003ecafa9cc\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/pauldambra\"\u003e\u003ccode\u003e@​pauldambra\u003c/code\u003e\u003c/a\u003e! - fix(replay): stop polling preload-as-style \u003ccode\u003e\u0026lt;link\u0026gt;\u003c/code\u003e elements forever. Session recorder treated \u003ccode\u003e\u0026lt;link rel=\u0026quot;preload\u0026quot; as=\u0026quot;style\u0026quot; href=\u0026quot;*.css\u0026quot;\u0026gt;\u003c/code\u003e as if it were a stylesheet and waited for \u003ccode\u003elink.sheet\u003c/code\u003e to populate. Per spec preload links never instantiate a \u003ccode\u003eCSSStyleSheet\u003c/code\u003e, so the wait timed out, re-serialized the link, scheduled another wait, and leaked a \u003ccode\u003eload\u003c/code\u003e listener on every cycle — multiplying further on every real \u003ccode\u003eload\u003c/code\u003e event. Pages with Next.js-style CSS preloads accumulated thousands of active polling chains, saturating the main thread and freezing the tab on refocus\n(2026-05-26)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/types\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.376.2\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-js@1.376.1\u003c/h2\u003e\n\u003ch2\u003e1.376.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/5568f12f46b4ebb7539f261edddda2f695ba03a2\"\u003e\u003ccode\u003e5568f12\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.10\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/types\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.376.1\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/a12207094c7e7a9b72dbdb513ade41d46df0dcda\"\u003e\u003ccode\u003ea122070\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/714ffa5874aa230ab49783d2415d54b23ffa54a1\"\u003e\u003ccode\u003e714ffa5\u003c/code\u003e\u003c/a\u003e fix(convex): register refresh cron unconditionally (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3684\"\u003e#3684\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/e1ff722bf0bd333ffdf5d077f8f60893aaf7ef5e\"\u003e\u003ccode\u003ee1ff722\u003c/code\u003e\u003c/a\u003e fix(replay): add debugging logs for recorder (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3695\"\u003e#3695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/f01cd939e096820b84666a463a61775ef69ce4c4\"\u003e\u003ccode\u003ef01cd93\u003c/code\u003e\u003c/a\u003e fix(replay): fix idle session rotation race condition (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3692\"\u003e#3692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/e05aea556bcfb5f5de573a28762f1cdd46928d82\"\u003e\u003ccode\u003ee05aea5\u003c/code\u003e\u003c/a\u003e fix(core): stop leaking DOM globals into public type surface (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3693\"\u003e#3693\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/f59f35ac5a6a0aa98be5f3ea3b88370df8d398aa\"\u003e\u003ccode\u003ef59f35a\u003c/code\u003e\u003c/a\u003e fix(cookieless): enable request queue when opting out in on_reject mode (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3685\"\u003e#3685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/cc71f3fa1f87838c28a68e593cd3f274f63db397\"\u003e\u003ccode\u003ecc71f3f\u003c/code\u003e\u003c/a\u003e chore(replay): bump posthog-js (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3691\"\u003e#3691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e fix: unify capture exception (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3681\"\u003e#3681\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/8ade9cbdfe0490238e92f62bc5626e361853dfb6\"\u003e\u003ccode\u003e8ade9cb\u003c/code\u003e\u003c/a\u003e feat(mcp): scaffold \u003ccode\u003e@​posthog/mcp\u003c/code\u003e package (1/2) (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3652\"\u003e#3652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/4b1231f72ebc5bb40a9e2ca16e631dc4e63e9599\"\u003e\u003ccode\u003e4b1231f\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PostHog/posthog-js/compare/posthog-js@1.373.4...posthog-js@1.376.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `posthog-node` from 5.33.7 to 5.35.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PostHog/posthog-js/releases\"\u003eposthog-node's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eposthog-node@5.35.6\u003c/h2\u003e\n\u003ch2\u003e5.35.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3681\"\u003e#3681\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ablaszkiewicz\"\u003e\u003ccode\u003e@​ablaszkiewicz\u003c/code\u003e\u003c/a\u003e! - unify captureException in posthog core\n(2026-05-28)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-node@5.35.5\u003c/h2\u003e\n\u003ch2\u003e5.35.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-node@5.35.4\u003c/h2\u003e\n\u003ch2\u003e5.35.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-node@5.35.3\u003c/h2\u003e\n\u003ch2\u003e5.35.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/5568f12f46b4ebb7539f261edddda2f695ba03a2\"\u003e\u003ccode\u003e5568f12\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-node@5.35.2\u003c/h2\u003e\n\u003ch2\u003e5.35.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3658\"\u003e#3658\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/5d7a2d336befb9c2b7be9ff1961d674623d33901\"\u003e\u003ccode\u003e5d7a2d3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavohstrassburger\"\u003e\u003ccode\u003e@​gustavohstrassburger\u003c/code\u003e\u003c/a\u003e! - Include group context in the $feature_flag_called deduplication key in _captureFlagCalledEventIfNeeded, so events fire independently per group combination.\n(2026-05-25)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-node@5.35.1\u003c/h2\u003e\n\u003ch2\u003e5.35.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/c806ccafdcc39b38e9554f8a17a8c2fbd3361dda\"\u003e\u003ccode\u003ec806cca\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.9\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/PostHog/posthog-js/blob/main/packages/node/CHANGELOG.md\"\u003eposthog-node's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.35.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3681\"\u003e#3681\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ablaszkiewicz\"\u003e\u003ccode\u003e@​ablaszkiewicz\u003c/code\u003e\u003c/a\u003e! - unify captureException in posthog core\n(2026-05-28)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/5568f12f46b4ebb7539f261edddda2f695ba03a2\"\u003e\u003ccode\u003e5568f12\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3658\"\u003e#3658\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/5d7a2d336befb9c2b7be9ff1961d674623d33901\"\u003e\u003ccode\u003e5d7a2d3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavohstrassburger\"\u003e\u003ccode\u003e@​gustavohstrassburger\u003c/code\u003e\u003c/a\u003e! - Include group context in the $feature_flag_called deduplication key in _captureFlagCalledEventIfNeeded, so events fire independently per group combination.\n(2026-05-25)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/c806ccafdcc39b38e9554f8a17a8c2fbd3361dda\"\u003e\u003ccode\u003ec806cca\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3642\"\u003e#3642\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/18ea8b53f608607075c93bc18b29be8dfd41eb3f\"\u003e\u003ccode\u003e18ea8b5\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dustinbyrne\"\u003e\u003ccode\u003e@​dustinbyrne\u003c/code\u003e\u003c/a\u003e! - Promote feature flag definition cache provider types to the main \u003ccode\u003eposthog-node\u003c/code\u003e export and deprecate \u003ccode\u003eposthog-node/experimental\u003c/code\u003e imports.\n(2026-05-21)\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/PostHog/posthog-js/commit/a12207094c7e7a9b72dbdb513ade41d46df0dcda\"\u003e\u003ccode\u003ea122070\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e fix: unify capture exception (\u003ca href=\"https://github.com/PostHog/posthog-js/tree/HEAD/packages/node/issues/3681\"\u003e#3681\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/727ddcfcc497fd42cfb89f17088ed467c13edd67\"\u003e\u003ccode\u003e727ddcf\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/e5a89ac32b7116f701a9e8e05bfb8361a3d8cee9\"\u003e\u003ccode\u003ee5a89ac\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/55b3c42160838974e6bc4d81417c15871bd7bd07\"\u003e\u003ccode\u003e55b3c42\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/1d0daf0a5c2721c0a6c600e12cb27474cfa74cc9\"\u003e\u003ccode\u003e1d0daf0\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/5d7a2d336befb9c2b7be9ff1961d674623d33901\"\u003e\u003ccode\u003e5d7a2d3\u003c/code\u003e\u003c/a\u003e fix(node): fire separate $feature_flag_called events per group context (\u003ca href=\"https://github.com/PostHog/posthog-js/tree/HEAD/packages/node/issues/3658\"\u003e#3658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/3d41c1d9dd4cecd928e5ec5b37ec16256bc95352\"\u003e\u003ccode\u003e3d41c1d\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/a05405d0ec67988715cb31634730f95729f3f27d\"\u003e\u003ccode\u003ea05405d\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/18ea8b53f608607075c93bc18b29be8dfd41eb3f\"\u003e\u003ccode\u003e18ea8b5\u003c/code\u003e\u003c/a\u003e feat(node): promote flag definition cache provider types (\u003ca href=\"https://github.com/PostHog/posthog-js/tree/HEAD/packages/node/issues/3642\"\u003e#3642\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PostHog/posthog-js/commits/posthog-node@5.35.6/packages/node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `playwright` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003eplaywright's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@rolldown/binding-linux-x64-gnu` from 1.0.0-rc.17 to 1.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rolldown/rolldown/releases\"\u003e@​rolldown/binding-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.3\u003c/h2\u003e\n\u003ch2\u003e[1.0.3] - 2026-05-27\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003etransform: respect decorator strictNullChecks option (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9580\"\u003e#9580\u003c/a\u003e) by \u003ca href=\"https://github.com/kylecannon\"\u003e\u003ccode\u003e@​kylecannon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edrop \u003ccode\u003edefer\u003c/code\u003e keyword (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9503\"\u003e#9503\u003c/a\u003e) by \u003ca href=\"https://github.com/TheAlexLichter\"\u003e\u003ccode\u003e@​TheAlexLichter\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eci: create target dir before cargo release-oxc update (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9584\"\u003e#9584\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: reorder prepare-release steps to avoid dirty git check failure (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9583\"\u003e#9583\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: canonicalize temp dir early and use platform-specific separator in test262 (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9582\"\u003e#9582\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: resolve symlinked temp dir in test262 snapshot normalization (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9581\"\u003e#9581\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: canonicalize temp dir path in test262 snapshot normalization (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9579\"\u003e#9579\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev: \u003ccode\u003eonOutput\u003c/code\u003e called twice when initial build fails (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9552\"\u003e#9552\u003c/a\u003e) by \u003ca href=\"https://github.com/hyf0\"\u003e\u003ccode\u003e@​hyf0\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev: make \u003ccode\u003eensureCurrentBuildFinish\u003c/code\u003e not returning error when engine closes (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9564\"\u003e#9564\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoxc-runtime: route require() to CJS helper variant (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9263\"\u003e#9263\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9526\"\u003e#9526\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003egenerator: use exporter chunk's export mode for CJS default re-exports (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9299\"\u003e#9299\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9529\"\u003e#9529\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erolldown: always run reduced-atom static cycle check (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9441\"\u003e#9441\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9514\"\u003e#9514\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eapply transform.dropLabels before scanning (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9521\"\u003e#9521\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9522\"\u003e#9522\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erolldown_watcher: take \u003ccode\u003erolldown\u003c/code\u003e dep through the workspace (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9510\"\u003e#9510\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ecache: keep the scan-stage cache consistent when a build fails (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9495\"\u003e#9495\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eskip JSON default-import namespace optimization for write targets (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9484\"\u003e#9484\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9489\"\u003e#9489\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: skip pnpm frozen-lockfile on Netlify to dodge catalog mismatch bug (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9471\"\u003e#9471\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚜 Refactor\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eoxc-runtime: use Cow for helper path construction (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9538\"\u003e#9538\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efold import defer phase drop into PreProcessor (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9524\"\u003e#9524\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edistinguish \u003ccode\u003emap: null\u003c/code\u003e vs \u003ccode\u003emap: undefined\u003c/code\u003e in transform hook output (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9497\"\u003e#9497\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eexplain the policy for Rust crates (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9547\"\u003e#9547\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ecache: add design doc for cache (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9544\"\u003e#9544\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eguide/troubleshooting: add TDZ error section (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9537\"\u003e#9537\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev-engine: add design doc for dev-engine (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9479\"\u003e#9479\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elazy-barrel: tweak some words (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9483\"\u003e#9483\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elazy-barrel: expand reasoning behind LARGE_BARREL_MODULES advice (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9477\"\u003e#9477\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e⚡ Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003egenerate: thread ast_table by value into codegen consumer (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9555\"\u003e#9555\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efinalizers: replace \u003ccode\u003e_reExport\u003c/code\u003e construction with a direct call to avoid calling \u003ccode\u003eclone_in\u003c/code\u003e (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9501\"\u003e#9501\u003c/a\u003e) by \u003ca href=\"https://github.com/Dunqing\"\u003e\u003ccode\u003e@​Dunqing\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ereorder hot-path boolean checks to short-circuit on cheap predicates first (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9523\"\u003e#9523\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧪 Testing\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erolldown: regression fixture for \u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9401\"\u003e#9401\u003c/a\u003e (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9418\"\u003e#9418\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\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/rolldown/rolldown/blob/main/CHANGELOG.md\"\u003e@​rolldown/binding-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.0.3] - 2026-05-27\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003etransform: respect decorator strictNullChecks option (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9580\"\u003e#9580\u003c/a\u003e) by \u003ca href=\"https://github.com/kylecannon\"\u003e\u003ccode\u003e@​kylecannon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edrop \u003ccode\u003edefer\u003c/code\u003e keyword (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9503\"\u003e#9503\u003c/a\u003e) by \u003ca href=\"https://github.com/TheAlexLichter\"\u003e\u003ccode\u003e@​TheAlexLichter\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eci: create target dir before cargo release-oxc update (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9584\"\u003e#9584\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: reorder prepare-release steps to avoid dirty git check failure (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9583\"\u003e#9583\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: canonicalize temp dir early and use platform-specific separator in test262 (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9582\"\u003e#9582\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: resolve symlinked temp dir in test262 snapshot normalization (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9581\"\u003e#9581\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: canonicalize temp dir path in test262 snapshot normalization (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9579\"\u003e#9579\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev: \u003ccode\u003eonOutput\u003c/code\u003e called twice when initial build fails (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9552\"\u003e#9552\u003c/a\u003e) by \u003ca href=\"https://github.com/hyf0\"\u003e\u003ccode\u003e@​hyf0\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev: make \u003ccode\u003eensureCurrentBuildFinish\u003c/code\u003e not returning error when engine closes (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9564\"\u003e#9564\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoxc-runtime: route require() to CJS helper variant (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9263\"\u003e#9263\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9526\"\u003e#9526\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003egenerator: use exporter chunk's export mode for CJS default re-exports (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9299\"\u003e#9299\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9529\"\u003e#9529\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erolldown: always run reduced-atom static cycle check (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9441\"\u003e#9441\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9514\"\u003e#9514\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eapply transform.dropLabels before scanning (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9521\"\u003e#9521\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9522\"\u003e#9522\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erolldown_watcher: take \u003ccode\u003erolldown\u003c/code\u003e dep through the workspace (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9510\"\u003e#9510\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ecache: keep the scan-stage cache consistent when a build fails (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9495\"\u003e#9495\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eskip JSON default-import namespace optimization for write targets (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9484\"\u003e#9484\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9489\"\u003e#9489\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: skip pnpm frozen-lockfile on Netlify to dodge catalog mismatch bug (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9471\"\u003e#9471\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚜 Refactor\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eoxc-runtime: use Cow for helper path construction (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9538\"\u003e#9538\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efold import defer phase drop into PreProcessor (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9524\"\u003e#9524\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edistinguish \u003ccode\u003emap: null\u003c/code\u003e vs \u003ccode\u003emap: undefined\u003c/code\u003e in transform hook output (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9497\"\u003e#9497\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eexplain the policy for Rust crates (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9547\"\u003e#9547\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ecache: add design doc for cache (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9544\"\u003e#9544\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eguide/troubleshooting: add TDZ error section (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9537\"\u003e#9537\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev-engine: add design doc for dev-engine (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9479\"\u003e#9479\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elazy-barrel: tweak some words (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9483\"\u003e#9483\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elazy-barrel: expand reasoning behind LARGE_BARREL_MODULES advice (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9477\"\u003e#9477\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e⚡ Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003egenerate: thread ast_table by value into codegen consumer (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9555\"\u003e#9555\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efinalizers: replace \u003ccode\u003e_reExport\u003c/code\u003e construction with a direct call to avoid calling \u003ccode\u003eclone_in\u003c/code\u003e (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9501\"\u003e#9501\u003c/a\u003e) by \u003ca href=\"https://github.com/Dunqing\"\u003e\u003ccode\u003e@​Dunqing\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ereorder hot-path boolean checks to short-circuit on cheap predicates first (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9523\"\u003e#9523\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧪 Testing\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erolldown: regression fixture for \u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9401\"\u003e#9401\u003c/a\u003e (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9418\"\u003e#9418\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efailing test for \u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9441\"\u003e#9441\u003c/a\u003e (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9504\"\u003e#9504\u003c/a\u003e) by \u003ca href=\"https://github.com/TheAlexLichter\"\u003e\u003ccode\u003e@​TheAlexLichter\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/rolldown/rolldown/commit/a287faaa3db70e9e4145b6bc16567f596a3c2e1f\"\u003e\u003ccode\u003ea287faa\u003c/code\u003e\u003c/a\u003e release: v1.0.3 (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9586\"\u003e#9586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/e3b77564d40b863e40936aa1435cd02f07fe26a4\"\u003e\u003ccode\u003ee3b7756\u003c/code\u003e\u003c/a\u003e feat(transform): respect decorator strictNullChecks option (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9580\"\u003e#9580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/8326121d51873508cf042213685428bcb962bd38\"\u003e\u003ccode\u003e8326121\u003c/code\u003e\u003c/a\u003e chore(deps): upgrade oxc to 0.133.0 (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9563\"\u003e#9563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/c7bbe2d4c12e2e9ed1bb58120a5dca9e6a391b98\"\u003e\u003ccode\u003ec7bbe2d\u003c/code\u003e\u003c/a\u003e fix(dev): \u003ccode\u003eonOutput\u003c/code\u003e called twice when initial build fails (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9552\"\u003e#9552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/95ed7caa16509440f12c7d5f8f2530dd94433562\"\u003e\u003ccode\u003e95ed7ca\u003c/code\u003e\u003c/a\u003e fix(dev): make \u003ccode\u003eensureCurrentBuildFinish\u003c/code\u003e not returning error when engine clo...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/f06c2a06f59791c2cb4debf82c2a152e8852cce6\"\u003e\u003ccode\u003ef06c2a0\u003c/code\u003e\u003c/a\u003e fix(oxc-runtime): route require() to CJS helper variant (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9263\"\u003e#9263\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9526\"\u003e#9526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/1de499a7a7fbb81de675e7f8b27248bf8022ab65\"\u003e\u003ccode\u003e1de499a\u003c/code\u003e\u003c/a\u003e feat: drop \u003ccode\u003edefer\u003c/code\u003e keyword (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9503\"\u003e#9503\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/e412df1881ec06624582739e0e6fc19f85b9f320\"\u003e\u003ccode\u003ee412df1\u003c/code\u003e\u003c/a\u003e refactor: distinguish \u003ccode\u003emap: null\u003c/code\u003e vs \u003ccode\u003emap: undefined\u003c/code\u003e in transform hook outpu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/47a0e3bc13842f8cf916dd5cd1de203257abe307\"\u003e\u003ccode\u003e47a0e3b\u003c/code\u003e\u003c/a\u003e docs(lazy-barrel): expand reasoning behind LARGE_BARREL_MODULES advice (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9477\"\u003e#9477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/f2757ed768477fc9bf198a7d8c370bbd426aa3eb\"\u003e\u003ccode\u003ef2757ed\u003c/code\u003e\u003c/a\u003e release: v1.0.2 (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9478\"\u003e#9478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rolldown/rolldown/commits/v1.0.3/packages/rolldown\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@rollup/rollup-linux-x64-gnu` from 4.60.1 to 4.60.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rollup/rollup/releases\"\u003e@​rollup/rollup-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.60.4\u003c/h2\u003e\n\u003ch2\u003e4.60.4\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-05-14\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove stability of chunk hashes (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6362\"\u003e#6362\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePull Requests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6362\"\u003e#6362\u003c/a\u003e: fix: stabilize chunk assignment across parallel file reads (\u003ca href=\"https://github.com/sonukapoor\"\u003e\u003ccode\u003e@​sonukapoor\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Sonu\"\u003e\u003ccode\u003e@​Sonu\u003c/code\u003e\u003c/a\u003e Kapoor, \u003ca href=\"https://github.com/TrickyPi\"\u003e\u003ccode\u003e@​TrickyPi\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6370\"\u003e#6370\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6371\"\u003e#6371\u003c/a\u003e: chore(deps): update dependency lru-cache to v11 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6372\"\u003e#6372\u003c/a\u003e: chore(deps): update react monorepo to v19 (major) (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6373\"\u003e#6373\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6375\"\u003e#6375\u003c/a\u003e: Resolve vulnerabilities (\u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.60.2\u003c/h2\u003e\n\u003ch2\u003e4.60.2\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-04-18\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResolve a variable rendering bug when generating different formats from the same build (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6350\"\u003e#6350\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePull Requests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6327\"\u003e#6327\u003c/a\u003e: docs: fix various typos in source and documentation (\u003ca href=\"https://github.com/Abhi3975\"\u003e\u003ccode\u003e@​Abhi3975\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6331\"\u003e#6331\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6332\"\u003e#6332\u003c/a\u003e: chore(deps): update codecov/codecov-action action to v6 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6333\"\u003e#6333\u003c/a\u003e: chore(deps): update dependency eslint-plugin-unicorn to v64 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6334\"\u003e#6334\u003c/a\u003e: fix(deps): update rust crate swc_compiler_base to v51 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6335\"\u003e#6335\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6346\"\u003e#6346\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6347\"\u003e#6347\u003c/a\u003e: chore(deps): update dependency lru-cache to v11 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6348\"\u003e#6348\u003c/a\u003e: fix(deps): update swc monorepo (major) (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6349\"\u003e#6349\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6350\"\u003e#6350\u003c/a\u003e: fix: reset variable render names between outputs in the same generate (\u003ca href=\"https://github.com/barry3406\"\u003e\u003ccode\u003e@​barry3406\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6351\"\u003e#6351\u003c/a\u003e: chore(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6352\"\u003e#6352\u003c/a\u003e: chore(deps): update cross-platform-actions/action action to v1 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6353\"\u003e#6353\u003c/a\u003e: chore(deps): update dependency lru-cache to v11 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6354\"\u003e#6354\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6355\"\u003e#6355\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6356\"\u003e#6356\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6358\"\u003e#6358\u003c/a\u003e: chore: remove cross-env from devDeps (\u003ca href=\"https://github.com/K-tecchan\"\u003e\u003ccode\u003e@​K-tecchan\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/rollup/rollup/blob/master/CHANGELOG.md\"\u003e@​rollup/rollup-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.60.4\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-05-14\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove stability of chunk hashes (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6362\"\u003e#6362\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePull Requests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6362\"\u003e#6362\u003c/a\u003e: fix: stabilize chunk assignment across parallel file reads (\u003ca href=\"https://github.com/sonukapoor\"\u003e\u003ccode\u003e@​sonukapoor\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Sonu\"\u003e\u003ccode\u003e@​Sonu\u003c/code\u003e\u003c/a\u003e Kapoor, \u003ca href=\"https://github.com/TrickyPi\"\u003e\u003ccode\u003e@​TrickyPi\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6370\"\u003e#6370\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6371\"\u003e#6371\u003c/a\u003e: chore(deps): update dependency lru-cache to v11 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6372\"\u003e#6372\u003c/a\u003e: chore(deps): update react monorepo to v19 (major) (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6373\"\u003e#6373\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6375\"\u003e#6375\u003c/a\u003e: Resolve vulnerabilities (\u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.60.3\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-05-04\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure nested \u0026quot;exports\u0026quot; variables are not renamed (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6360\"\u003e#6360\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePull Requests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6360\"\u003e#6360\u003c/a\u003e: fix: do not rename nested \u0026quot;exports\u0026quot; bindings that do not conflict (\u003ca href=\"https://github.com/tariqrafique\"\u003e\u003ccode\u003e@​tariqrafique\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6364\"\u003e#6364\u003c/a\u003e: chore(deps): update msys2/setup-msys2 digest to e989830 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6365\"\u003e#6365\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6366\"\u003e#6366\u003c/a\u003e: fix(deps): update swc monorepo (major) (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6367\"\u003e#6367\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6368\"\u003e#6368\u003c/a\u003e: docs: add missing backticks in \u003ccode\u003eplugin-development\u003c/code\u003e (\u003ca href=\"https://github.com/lumirlumir\"\u003e\u003ccode\u003e@​lumirlumir\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.60.2\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-04-18\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResolve a variable rendering bug when generating different formats from the same build (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6350\"\u003e#6350\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePull Requests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6327\"\u003e#6327\u003c/a\u003e: docs: fix various typos in source and documentation (\u003ca href=\"https://github.com/Abhi3975\"\u003e\u003ccode\u003e@​Abhi3975\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6331\"\u003e#6331\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6332\"\u003e#6332\u003c/a\u003e: chore(deps): update codecov/codecov-action action to v6 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6333\"\u003e#6333\u003c/a\u003e: chore(deps): update dependency eslint-plugin-unicorn to v64 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6334\"\u003e#6334\u003c/a\u003e: fix(deps): update rust crate swc_compiler_base to v51 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6335\"\u003e#6335\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\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/rollup/rollup/commit/d311a84b0bb4d4a6f50d19ffd2c29cca28660c88\"\u003e\u003ccode\u003ed311a84\u003c/code\u003e\u003c/a\u003e 4.60.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rollup/rollup/commit/6aa324854482e273b711972955d2d1b3bb445bcc\"\u003e\u003ccode\u003e6aa3248\u003c/code\u003e\u003c/a\u003e fix: stabilize chunk assignment across parallel file reads (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6362\"\u003e#6362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rollup/rollup/commit/82a0fe76b1372a2cf509fc4067d69f25569b83f5\"\u003e\u003ccode\u003e82a0fe7\u003c/code\u003e\u003c/a\u003e Resolve vulnerabilities (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6375\"\u003e#6375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rollup/rollup/commit/71f5ebc893d7ff76b5571d63b04ea2ed...\n\n_Description has been truncated_","html_url":"https://github.com/maxd4/CleanmyMap/pull/68","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxd4%2FCleanmyMap/issues/68","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/68/packages"},{"uuid":"4556318854","node_id":"PR_kwDORewJlc7hCA6R","number":335,"state":"open","title":"chore(deps): bump the dev-dependencies group across 1 directory with 20 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-31T02:17:26.000Z","updated_at":"2026-05-31T02:18:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"dev-dependencies","update_count":20,"packages":[{"name":"@biomejs/biome","old_version":"2.4.8","new_version":"2.4.16","repository_url":"https://github.com/biomejs/biome"},{"name":"@vitest/coverage-v8","old_version":"4.1.0","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"fs-xattr","old_version":"0.3.1","new_version":"0.4.0","repository_url":"https://github.com/LinusU/fs-xattr"},{"name":"vitest","old_version":"4.1.0","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@tailwindcss/postcss","old_version":"4.2.2","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@typia/unplugin","old_version":"12.0.1","new_version":"12.1.1","repository_url":"https://github.com/samchon/typia"},{"name":"tsx","old_version":"4.21.0","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"},{"name":"typescript-json-schema","old_version":"0.67.1","new_version":"0.67.4","repository_url":"https://github.com/YousefED/typescript-json-schema"},{"name":"@electron-forge/cli","old_version":"7.11.1","new_version":"7.11.2","repository_url":"https://github.com/electron/forge"},{"name":"@electron-forge/maker-dmg","old_version":"7.11.1","new_version":"7.11.2","repository_url":"https://github.com/electron/forge"},{"name":"@electron-forge/maker-squirrel","old_version":"7.11.1","new_version":"7.11.2","repository_url":"https://github.com/electron/forge"},{"name":"@electron-forge/maker-zip","old_version":"7.11.1","new_version":"7.11.2","repository_url":"https://github.com/electron/forge"},{"name":"playwright","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"postcss","old_version":"8.5.8","new_version":"8.5.15","repository_url":"https://github.com/postcss/postcss"},{"name":"@tailwindcss/vite","old_version":"4.2.2","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"eslint-plugin-react-refresh","old_version":"0.4.26","new_version":"0.5.2","repository_url":"https://github.com/ArnaudBarre/eslint-plugin-react-refresh"},{"name":"typescript-eslint","old_version":"8.58.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@remotion/cli","old_version":"4.0.454","new_version":"4.0.469","repository_url":"https://github.com/remotion-dev/remotion"},{"name":"@webgpu/types","old_version":"0.1.69","new_version":"0.1.70","repository_url":"https://github.com/gpuweb/types"}],"path":null,"ecosystem":"npm"},"body":"Bumps the dev-dependencies group with 20 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.8` | `2.4.16` |\n| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.1.0` | `4.1.7` |\n| [fs-xattr](https://github.com/LinusU/fs-xattr) | `0.3.1` | `0.4.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.0` | `4.1.7` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.2` | `4.3.0` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [@typia/unplugin](https://github.com/samchon/typia) | `12.0.1` | `12.1.1` |\n| [tsx](https://github.com/privatenumber/tsx) | `4.21.0` | `4.22.3` |\n| [typescript-json-schema](https://github.com/YousefED/typescript-json-schema) | `0.67.1` | `0.67.4` |\n| [@electron-forge/cli](https://github.com/electron/forge) | `7.11.1` | `7.11.2` |\n| [@electron-forge/maker-dmg](https://github.com/electron/forge) | `7.11.1` | `7.11.2` |\n| [@electron-forge/maker-squirrel](https://github.com/electron/forge) | `7.11.1` | `7.11.2` |\n| [@electron-forge/maker-zip](https://github.com/electron/forge) | `7.11.1` | `7.11.2` |\n| [playwright](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [postcss](https://github.com/postcss/postcss) | `8.5.8` | `8.5.15` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.2` | `4.3.0` |\n| [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh) | `0.4.26` | `0.5.2` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.58.0` | `8.60.0` |\n| [@remotion/cli](https://github.com/remotion-dev/remotion) | `4.0.454` | `4.0.469` |\n| [@webgpu/types](https://github.com/gpuweb/types) | `0.1.69` | `0.1.70` |\n\n\nUpdates `@biomejs/biome` from 2.4.8 to 2.4.16\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.16\u003c/h2\u003e\n\u003ch2\u003e2.4.16\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/10329\"\u003e#10329\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ef764d51b9f5be18ec5a4f9b4dce732512e5d805\"\u003e\u003ccode\u003eef764d5\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed an issue where diagnostics showed an incorrect location in Astro files.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10363\"\u003e#10363\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/50aa4157599a1ac5c77c13bce81f5c87240beff0\"\u003e\u003ccode\u003e50aa415\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed HTML formatting for a case where comments could cause the formatter to split up a closing tag, which would cause the resulting HTML to be syntactically invalid.\u003c/p\u003e\n\u003cp\u003eInput:\u003c/p\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;span\n  \u0026gt;\u0026lt;!-- 1\n--\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 2\n--\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 3\n--\u0026gt;\u0026lt;/span\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOutput:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e  \u0026lt;span\n\t  \u0026gt;\u0026lt;!-- 1\n- --\u0026gt; \u0026lt;span\u0026gt;a\u0026lt;/span\u0026lt;!-- 2\n- --\u0026gt; \u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n+ --\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\u0026gt;\u0026lt;!-- 2\n+ --\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n  --\u0026gt;\u0026lt;/span\n  \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/10465\"\u003e#10465\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/0c718da81770f47d65845bc1a006f99512d9359b\"\u003e\u003ccode\u003e0c718da\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dfedoryshchev\"\u003e\u003ccode\u003e@​dfedoryshchev\u003c/code\u003e\u003c/a\u003e! - Fixed diagnostics emitted by the \u003ccode\u003enoUntrustedLicenses\u003c/code\u003e rule.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10358\"\u003e#10358\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/05c26176573534a0abfa92d454d244f9569bc77d\"\u003e\u003ccode\u003e05c2617\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10356\"\u003e#10356\u003c/a\u003e: \u003ccode\u003ebiome rage --linter\u003c/code\u003e now displays rules enabled through linter domains in the enabled rules list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10300\"\u003e#10300\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/950247c389e693c16b47d61d8ef0f1b85d1a1b02\"\u003e\u003ccode\u003e950247c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10265\"\u003e#10265\u003c/a\u003e: Svelte function bindings such as \u003ccode\u003ebind:value={get, set}\u003c/code\u003e are now parsed more precisely, so \u003ca href=\"https://biomejs.dev/linter/rules/no-comma-operator/\"\u003e\u003ccode\u003enoCommaOperator\u003c/code\u003e\u003c/a\u003e won't emit false positives for that syntax anymore.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9786\"\u003e#9786\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MeGaNeKoS\"\u003e\u003ccode\u003e@​MeGaNeKoS\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/8480\"\u003e#8480\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/use-destructuring/\"\u003e\u003ccode\u003euseDestructuring\u003c/code\u003e\u003c/a\u003e now provides \u003ccode\u003evariableDeclarator\u003c/code\u003e and \u003ccode\u003eassignmentExpression\u003c/code\u003e options to control which contexts enforce destructuring, matching ESLint's \u003ccode\u003eprefer-destructuring\u003c/code\u003e configuration. Both default to \u003ccode\u003e{array: true, object: true}\u003c/code\u003e. The diagnostic for object destructuring in assignment expressions now instructs users to wrap the assignment in parentheses.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10425\"\u003e#10425\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1948b7242e092ed0cfcf501ef6f119202b8ea93b\"\u003e\u003ccode\u003e1948b72\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/sjh9714\"\u003e\u003ccode\u003e@​sjh9714\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10244\"\u003e#10244\u003c/a\u003e: The \u003ccode\u003euseOptionalChain\u003c/code\u003e rule now detects negated guard inequality chains like \u003ccode\u003e!foo || foo.bar !== \u0026quot;x\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10442\"\u003e#10442\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/001f94f696d9baca3c231d39895a01d4dd528d52\"\u003e\u003ccode\u003e001f94f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ematipico\"\u003e\u003ccode\u003e@​ematipico\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10411\"\u003e#10411\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/no-misused-promises/\"\u003e\u003ccode\u003enoMisusedPromises\u003c/code\u003e\u003c/a\u003e no longer causes a stack overflow when a nested function returns an object with shorthand properties that shadow destructured variables from an outer scope.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10318\"\u003e#10318\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added support for \u003ccode\u003eformatter.trailingCommas\u003c/code\u003e in overrides. This option was previously available in the top-level formatter configuration but missing from formatter overrides.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10319\"\u003e#10319\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/2e3770923f9fb4e33606113e726014f7b63730d0\"\u003e\u003ccode\u003e2e37709\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed Vue and Svelte formatting for standalone interpolations in inline elements. Biome now preserves existing newlines in cases like:\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/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.16\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/10329\"\u003e#10329\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ef764d51b9f5be18ec5a4f9b4dce732512e5d805\"\u003e\u003ccode\u003eef764d5\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed an issue where diagnostics showed an incorrect location in Astro files.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10363\"\u003e#10363\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/50aa4157599a1ac5c77c13bce81f5c87240beff0\"\u003e\u003ccode\u003e50aa415\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed HTML formatting for a case where comments could cause the formatter to split up a closing tag, which would cause the resulting HTML to be syntactically invalid.\u003c/p\u003e\n\u003cp\u003eInput:\u003c/p\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;span\n  \u0026gt;\u0026lt;!-- 1\n--\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 2\n--\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 3\n--\u0026gt;\u0026lt;/span\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOutput:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e  \u0026lt;span\n\t  \u0026gt;\u0026lt;!-- 1\n- --\u0026gt; \u0026lt;span\u0026gt;a\u0026lt;/span\u0026lt;!-- 2\n- --\u0026gt; \u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n+ --\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\u0026gt;\u0026lt;!-- 2\n+ --\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n  --\u0026gt;\u0026lt;/span\n  \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/10465\"\u003e#10465\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/0c718da81770f47d65845bc1a006f99512d9359b\"\u003e\u003ccode\u003e0c718da\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dfedoryshchev\"\u003e\u003ccode\u003e@​dfedoryshchev\u003c/code\u003e\u003c/a\u003e! - Fixed diagnostics emitted by the \u003ccode\u003enoUntrustedLicenses\u003c/code\u003e rule.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10358\"\u003e#10358\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/05c26176573534a0abfa92d454d244f9569bc77d\"\u003e\u003ccode\u003e05c2617\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10356\"\u003e#10356\u003c/a\u003e: \u003ccode\u003ebiome rage --linter\u003c/code\u003e now displays rules enabled through linter domains in the enabled rules list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10300\"\u003e#10300\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/950247c389e693c16b47d61d8ef0f1b85d1a1b02\"\u003e\u003ccode\u003e950247c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10265\"\u003e#10265\u003c/a\u003e: Svelte function bindings such as \u003ccode\u003ebind:value={get, set}\u003c/code\u003e are now parsed more precisely, so \u003ca href=\"https://biomejs.dev/linter/rules/no-comma-operator/\"\u003e\u003ccode\u003enoCommaOperator\u003c/code\u003e\u003c/a\u003e won't emit false positives for that syntax anymore.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9786\"\u003e#9786\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MeGaNeKoS\"\u003e\u003ccode\u003e@​MeGaNeKoS\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/8480\"\u003e#8480\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/use-destructuring/\"\u003e\u003ccode\u003euseDestructuring\u003c/code\u003e\u003c/a\u003e now provides \u003ccode\u003evariableDeclarator\u003c/code\u003e and \u003ccode\u003eassignmentExpression\u003c/code\u003e options to control which contexts enforce destructuring, matching ESLint's \u003ccode\u003eprefer-destructuring\u003c/code\u003e configuration. Both default to \u003ccode\u003e{array: true, object: true}\u003c/code\u003e. The diagnostic for object destructuring in assignment expressions now instructs users to wrap the assignment in parentheses.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10425\"\u003e#10425\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1948b7242e092ed0cfcf501ef6f119202b8ea93b\"\u003e\u003ccode\u003e1948b72\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/sjh9714\"\u003e\u003ccode\u003e@​sjh9714\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10244\"\u003e#10244\u003c/a\u003e: The \u003ccode\u003euseOptionalChain\u003c/code\u003e rule now detects negated guard inequality chains like \u003ccode\u003e!foo || foo.bar !== \u0026quot;x\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10442\"\u003e#10442\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/001f94f696d9baca3c231d39895a01d4dd528d52\"\u003e\u003ccode\u003e001f94f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ematipico\"\u003e\u003ccode\u003e@​ematipico\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10411\"\u003e#10411\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/no-misused-promises/\"\u003e\u003ccode\u003enoMisusedPromises\u003c/code\u003e\u003c/a\u003e no longer causes a stack overflow when a nested function returns an object with shorthand properties that shadow destructured variables from an outer scope.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10318\"\u003e#10318\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added support for \u003ccode\u003eformatter.trailingCommas\u003c/code\u003e in overrides. This option was previously available in the top-level formatter configuration but missing from formatter overrides.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10319\"\u003e#10319\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/2e3770923f9fb4e33606113e726014f7b63730d0\"\u003e\u003ccode\u003e2e37709\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed Vue and Svelte formatting for standalone interpolations in inline elements. Biome now preserves existing newlines in cases like:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e\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/5f4ea56b1dfb00d839af218e3c6484154073a7eb\"\u003e\u003ccode\u003e5f4ea56\u003c/code\u003e\u003c/a\u003e ci: release (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10326\"\u003e#10326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/de2a33ce8be86b696742f3adee35a66dc9fa943b\"\u003e\u003ccode\u003ede2a33c\u003c/code\u003e\u003c/a\u003e fix(core): regression in emitted types (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10478\"\u003e#10478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/d835303700f27f8f362a186a0dddc7995117daf9\"\u003e\u003ccode\u003ed835303\u003c/code\u003e\u003c/a\u003e docs: remove redundant default phrase in \u003ccode\u003euseConsistentObjectDefinitions\u003c/code\u003e rul...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/4f1aaf2f833d5963dd150836836be6bc68212d68\"\u003e\u003ccode\u003e4f1aaf2\u003c/code\u003e\u003c/a\u003e fix: incorrect build when using build or test (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10426\"\u003e#10426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/dc73b6baa55606ec7b6aa9229564b1c142116f2b\"\u003e\u003ccode\u003edc73b6b\u003c/code\u003e\u003c/a\u003e refactor: make plugins opt-in via feature gate (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10418\"\u003e#10418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e feat(useDestructuring): add options for assignment/declaration and improve di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e fix(config): support trailingCommas in overrides (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10318\"\u003e#10318\u003c/a\u003e)\u003c/li\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\u003eAdditional commits viewable in \u003ca href=\"https://github.com/biomejs/biome/commits/@biomejs/biome@2.4.16/packages/@biomejs/biome\"\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.0 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev4.1.5\u003c/h2\u003e\n\u003ch3\u003e   🚀 Experimental Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e: Istanbul to support \u003ccode\u003einstrumenter\u003c/code\u003e option  -  by \u003ca href=\"https://github.com/BartWaardenburg\"\u003e\u003ccode\u003e@​BartWaardenburg\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10119\"\u003evitest-dev/vitest#10119\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/0e0ff41c7\"\u003e\u003c!-- raw HTML omitted --\u003e(0e0ff)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e--project negation excludes browser instances  -  by \u003ca href=\"https://github.com/felamaslen\"\u003e\u003ccode\u003e@​felamaslen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10131\"\u003evitest-dev/vitest#10131\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9423dc084\"\u003e\u003c!-- raw HTML omitted --\u003e(9423d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eProject color label on html reporter  -  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/10142\"\u003evitest-dev/vitest#10142\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/596f73986\"\u003e\u003c!-- raw HTML omitted --\u003e(596f7)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003evi.defineHelper\u003c/code\u003e called as object method  -  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/10163\"\u003evitest-dev/vitest#10163\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/122c25b5b\"\u003e\u003c!-- raw HTML omitted --\u003e(122c2)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlias \u003ccode\u003eagent\u003c/code\u003e reporter to \u003ccode\u003eminimal\u003c/code\u003e  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10157\"\u003evitest-dev/vitest#10157\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/663b99fe3\"\u003e\u003c!-- raw HTML omitted --\u003e(663b9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect diff config options in soft assertions  -  by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003esheremet-va\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/8696\"\u003evitest-dev/vitest#8696\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9787dedad\"\u003e\u003c!-- raw HTML omitted --\u003e(9787d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect diff config options in soft assertions \u0026quot;  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/8696\"\u003evitest-dev/vitest#8696\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/7dc6d54fd\"\u003e\u003c!-- raw HTML omitted --\u003e(7dc6d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003east-collect\u003c/strong\u003e: Recognize _\u003cem\u003evi_import\u003c/em\u003e prefix in static test discovery  -  by \u003ca href=\"https://github.com/Yejneshwar\"\u003e\u003ccode\u003e@​Yejneshwar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10129\"\u003evitest-dev/vitest#10129\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/325463ab2\"\u003e\u003c!-- raw HTML omitted --\u003e(32546)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e: Descriptive error message when reports directory is removed during test run  -  by \u003ca href=\"https://github.com/DaveT1991\"\u003e\u003ccode\u003e@​DaveT1991\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10117\"\u003evitest-dev/vitest#10117\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/1413382e1\"\u003e\u003c!-- raw HTML omitted --\u003e(14133)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esnapshot\u003c/strong\u003e: Increase default snapshot max output length  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eCodex\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10150\"\u003evitest-dev/vitest#10150\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/21e66ff63\"\u003e\u003c!-- raw HTML omitted --\u003e(21e66)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eui\u003c/strong\u003e: Fix jsx/tsx syntax highlight  -  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/10152\"\u003evitest-dev/vitest#10152\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/f1b1f6c7b\"\u003e\u003c!-- raw HTML omitted --\u003e(f1b1f)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eweb-worker\u003c/strong\u003e: Support MessagePort objects referenced inside postMessage data  -  by \u003ca href=\"https://github.com/whitphx\"\u003e\u003ccode\u003e@​whitphx\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/9927\"\u003evitest-dev/vitest#9927\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10124\"\u003evitest-dev/vitest#10124\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/7ad7d39af\"\u003e\u003c!-- raw HTML omitted --\u003e(7ad7d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi\u003c/strong\u003e: Make test-specification options writable  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10154\"\u003evitest-dev/vitest#10154\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/6abd557b7\"\u003e\u003c!-- raw HTML omitted --\u003e(6abd5)\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.4...v4.1.5\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev4.1.4\u003c/h2\u003e\n\u003ch3\u003e   🚀 Experimental Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e:\n\u003cul\u003e\n\u003cli\u003eDefault to text reporter \u003ccode\u003eskipFull\u003c/code\u003e if agent detected  -  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/10018\"\u003evitest-dev/vitest#10018\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/53757804c\"\u003e\u003c!-- raw HTML omitted --\u003e(53757)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eexperimental\u003c/strong\u003e:\n\u003cul\u003e\n\u003cli\u003eExpose \u003ccode\u003eassertion\u003c/code\u003e as a public field  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10095\"\u003evitest-dev/vitest#10095\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/a120e3ab8\"\u003e\u003c!-- raw HTML omitted --\u003e(a120e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport aria snapshot  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e, \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/9668\"\u003evitest-dev/vitest#9668\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/d4fbb5cc9\"\u003e\u003c!-- raw HTML omitted --\u003e(d4fbb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\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\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/e399846850fedf10b8228cbe46a419628998acd9\"\u003e\u003ccode\u003ee399846\u003c/code\u003e\u003c/a\u003e chore: release v4.1.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/ac04bac206f49d793e7277084f707aee718aa936\"\u003e\u003ccode\u003eac04bac\u003c/code\u003e\u003c/a\u003e chore: release v4.1.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/2dc0d62eaf08d8acb1f5042fdb8ac5b4a19fdc73\"\u003e\u003ccode\u003e2dc0d62\u003c/code\u003e\u003c/a\u003e chore: release v4.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/fc6f482f4c54bf6a766a0ff502b9843994af5bf5\"\u003e\u003ccode\u003efc6f482\u003c/code\u003e\u003c/a\u003e chore: release v4.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/1f2d318493363855b66a22caaf7c1c10579029d5\"\u003e\u003ccode\u003e1f2d318\u003c/code\u003e\u003c/a\u003e chore: release v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/aaf9f18ae70e52b6e67aaf85f7f784d9dabd0acc\"\u003e\u003ccode\u003eaaf9f18\u003c/code\u003e\u003c/a\u003e fix(coverage): simplify provider types (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8/issues/9931\"\u003e#9931\u003c/a\u003e)\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 `fs-xattr` from 0.3.1 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/LinusU/fs-xattr/releases\"\u003efs-xattr's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e🚢 0.4.0 / 2021-05-11\u003c/h2\u003e\n\u003ch2\u003e💥 Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eConvert package to ESM\u003c/p\u003e\n\u003cp\u003eMigration Guide:\u003c/p\u003e\n\u003cp\u003eThis relases changes the package from a Common JS module to an EcmaScript module, and drops support for older versions of Node.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe minimum version of Node.js supported is now: \u003ccode\u003e12.20.0\u003c/code\u003e, \u003ccode\u003e14.13.1\u003c/code\u003e, and \u003ccode\u003e16.0.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe package must now be imported using the native \u003ccode\u003eimport\u003c/code\u003e syntax instead of with \u003ccode\u003erequire\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe exported functions have been renamed to have better stand-alone names:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget\u003c/code\u003e to \u003ccode\u003egetAttribute\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eset\u003c/code\u003e to \u003ccode\u003esetAttribute\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremove\u003c/code\u003e to \u003ccode\u003eremoveAttribute\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003elistAttributes\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egetSync\u003c/code\u003e to \u003ccode\u003egetAttributeSync\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esetSync\u003c/code\u003e to \u003ccode\u003esetAttributeSync\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremoveSync\u003c/code\u003e to \u003ccode\u003eremoveAttributeSync\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elistSync\u003c/code\u003e to \u003ccode\u003elistAttributesSync\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🌹 Internal Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd documentation about namespaces\u003c/li\u003e\n\u003cli\u003eUpgrade to Mocha 7.x\u003c/li\u003e\n\u003cli\u003eSwitch CI to GitHub Actions\u003c/li\u003e\n\u003cli\u003eUpgrade to Mocha 8.x\u003c/li\u003e\n\u003cli\u003eUpgrade to Standard 16.x\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/LinusU/fs-xattr/commit/d9ffa8c0df504c8d140ccc761cbf55f7aab4dbcf\"\u003e\u003ccode\u003ed9ffa8c\u003c/code\u003e\u003c/a\u003e 🚢 0.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/2179cce8d7a85f65655cbb7a9b809058d22f9e6b\"\u003e\u003ccode\u003e2179cce\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/LinusU/fs-xattr/issues/41\"\u003e#41\u003c/a\u003e from LinusU/lu-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/4e98f654e717d21411725e8fadb96bf7ae416481\"\u003e\u003ccode\u003e4e98f65\u003c/code\u003e\u003c/a\u003e 🌹 Upgrade to Standard 16.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/acbad7b527dd499a9d784e14af663e77b996b813\"\u003e\u003ccode\u003eacbad7b\u003c/code\u003e\u003c/a\u003e 🌹 Upgrade to Mocha 8.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/4b926f17be626de5384cd90adaab770e833fa08b\"\u003e\u003ccode\u003e4b926f1\u003c/code\u003e\u003c/a\u003e 💥 Convert package to ESM\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/6445f635afa5d9b9a0ba7db72b64ba51289787ed\"\u003e\u003ccode\u003e6445f63\u003c/code\u003e\u003c/a\u003e 🌹 Switch CI to GitHub Actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/0a2cfb4e986c5eb20f313bb3ed93bc2921922a8e\"\u003e\u003ccode\u003e0a2cfb4\u003c/code\u003e\u003c/a\u003e 🌹 Upgrade to Mocha 7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/171d502d30596f38e4c4b99a3357cd3efaacfe9c\"\u003e\u003ccode\u003e171d502\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/LinusU/fs-xattr/issues/39\"\u003e#39\u003c/a\u003e from styks1987/master\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/e5a5cfda68fa65ab44482380c6e3a01e99a8e114\"\u003e\u003ccode\u003ee5a5cfd\u003c/code\u003e\u003c/a\u003e 🌹 Add documentation about namespaces\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/LinusU/fs-xattr/compare/v0.3.1...v0.4.0\"\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.0 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev4.1.5\u003c/h2\u003e\n\u003ch3\u003e   🚀 Experimental Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e: Istanbul to support \u003ccode\u003einstrumenter\u003c/code\u003e option  -  by \u003ca href=\"https://github.com/BartWaardenburg\"\u003e\u003ccode\u003e@​BartWaardenburg\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10119\"\u003evitest-dev/vitest#10119\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/0e0ff41c7\"\u003e\u003c!-- raw HTML omitted --\u003e(0e0ff)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e--project negation excludes browser instances  -  by \u003ca href=\"https://github.com/felamaslen\"\u003e\u003ccode\u003e@​felamaslen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10131\"\u003evitest-dev/vitest#10131\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9423dc084\"\u003e\u003c!-- raw HTML omitted --\u003e(9423d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eProject color label on html reporter  -  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/10142\"\u003evitest-dev/vitest#10142\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/596f73986\"\u003e\u003c!-- raw HTML omitted --\u003e(596f7)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003evi.defineHelper\u003c/code\u003e called as object method  -  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/10163\"\u003evitest-dev/vitest#10163\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/122c25b5b\"\u003e\u003c!-- raw HTML omitted --\u003e(122c2)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlias \u003ccode\u003eagent\u003c/code\u003e reporter to \u003ccode\u003eminimal\u003c/code\u003e  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10157\"\u003evitest-dev/vitest#10157\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/663b99fe3\"\u003e\u003c!-- raw HTML omitted --\u003e(663b9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect diff config options in soft assertions  -  by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003esheremet-va\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/8696\"\u003evitest-dev/vitest#8696\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9787dedad\"\u003e\u003c!-- raw HTML omitted --\u003e(9787d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect diff config options in soft assertions \u0026quot;  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/8696\"\u003evitest-dev/vitest#8696\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/7dc6d54fd\"\u003e\u003c!-- raw HTML omitted --\u003e(7dc6d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003east-collect\u003c/strong\u003e: Recognize _\u003cem\u003evi_import\u003c/em\u003e prefix in static test discovery  -  by \u003ca href=\"https://github.com/Yejneshwar\"\u003e\u003ccode\u003e@​Yejneshwar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10129\"\u003evitest-dev/vitest#10129\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/325463ab2\"\u003e\u003c!-- raw HTML omitted --\u003e(32546)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e: Descriptive error message when reports directory is removed during test run  -  by \u003ca href=\"https://github.com/DaveT1991\"\u003e\u003ccode\u003e@​DaveT1991\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10117\"\u003evitest-dev/vitest#10117\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/1413382e1\"\u003e\u003c!-- raw HTML omitted --\u003e(14133)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esnapshot\u003c/strong\u003e: Increase default snapshot max output length  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eCodex\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10150\"\u003evitest-dev/vitest#10150\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/21e66ff63\"\u003e\u003c!-- raw HTML omitted --\u003e(21e66)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eui\u003c/strong\u003e: Fix jsx/tsx syntax highlight  -  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/10152\"\u003evitest-dev/vitest#10152\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/f1b1f6c7b\"\u003e\u003c!-- raw HTML omitted --\u003e(f1b1f)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eweb-worker\u003c/strong\u003e: Support MessagePort objects referenced inside postMessage data  -  by \u003ca href=\"https://github.com/whitphx\"\u003e\u003ccode\u003e@​whitphx\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/9927\"\u003evitest-dev/vitest#9927\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10124\"\u003evitest-dev/vitest#10124\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/7ad7d39af\"\u003e\u003c!-- raw HTML omitted --\u003e(7ad7d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi\u003c/strong\u003e: Make test-specification options writable  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10154\"\u003evitest-dev/vitest#10154\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/6abd557b7\"\u003e\u003c!-- raw HTML omitted --\u003e(6abd5)\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.4...v4.1.5\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev4.1.4\u003c/h2\u003e\n\u003ch3\u003e   🚀 Experimental Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e:\n\u003cul\u003e\n\u003cli\u003eDefault to text reporter \u003ccode\u003eskipFull\u003c/code\u003e if agent detected  -  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/10018\"\u003evitest-dev/vitest#10018\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/53757804c\"\u003e\u003c!-- raw HTML omitted --\u003e(53757)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eexperimental\u003c/strong\u003e:\n\u003cul\u003e\n\u003cli\u003eExpose \u003ccode\u003eassertion\u003c/code\u003e as a public field  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10095\"\u003evitest-dev/vitest#10095\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/a120e3ab8\"\u003e\u003c!-- raw HTML omitted --\u003e(a120e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport aria snapshot  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e, \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/9668\"\u003evitest-dev/vitest#9668\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/d4fbb5cc9\"\u003e\u003c!-- raw HTML omitted --\u003e(d4fbb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\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\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee1830604d57f6a02bf28f8067cdffc06\"\u003e\u003ccode\u003e18af98c\u003c/code\u003e\u003c/a\u003e fix(browser): simplify orchestrator otel carrier (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10285\"\u003e#10285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607cc67c7bf52ead13a606321ffdb06a857\"\u003e\u003ccode\u003e3188260\u003c/code\u003e\u003c/a\u003e feat(browser): provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/e399846850fedf10b8228cbe46a419628998acd9\"\u003e\u003ccode\u003ee399846\u003c/code\u003e\u003c/a\u003e chore: release v4.1.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/7dc6d54fd9dda0fe6fee2fb6451d0611a9ecb6e7\"\u003e\u003ccode\u003e7dc6d54\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: respect diff config options in soft assertions (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/8696\"\u003e#8696\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/9787dedade9896a6d3eeed7739177d6c583a68a7\"\u003e\u003ccode\u003e9787ded\u003c/code\u003e\u003c/a\u003e fix: respect diff config options in soft assertions (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/8696\"\u003e#8696\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/325463ab292c45c3ef27aa21ec7da380c307052c\"\u003e\u003ccode\u003e325463a\u003c/code\u003e\u003c/a\u003e fix(ast-collect): recognize _\u003cem\u003evi_import\u003c/em\u003e prefix in static test discovery (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10\"\u003e#10\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/0e0ff41c7e86d6e2bf581f074dc216805d10d371\"\u003e\u003ccode\u003e0e0ff41\u003c/code\u003e\u003c/a\u003e feat(coverage): istanbul to support \u003ccode\u003einstrumenter\u003c/code\u003e option (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10119\"\u003e#10119\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/663b99fe3e6a60fc8a7ccd2d9941d1cbe929b606\"\u003e\u003ccode\u003e663b99f\u003c/code\u003e\u003c/a\u003e fix: alias \u003ccode\u003eagent\u003c/code\u003e reporter to \u003ccode\u003eminimal\u003c/code\u003e (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10157\"\u003e#10157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable 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 `@tailwindcss/postcss` from 4.2.2 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/postcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/postcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/12eb5ae7b6026ff64c04f889b2221418d772da72\"\u003e\u003ccode\u003e12eb5ae\u003c/code\u003e\u003c/a\u003e Cleanup noisy test output (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4255671c5f792c42808ecd6b2dec27c16e3c559e\"\u003e\u003ccode\u003e4255671\u003c/code\u003e\u003c/a\u003e Improve snapshot tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52f94c74bb491e9c3641ce322a0ef90fb3c45de6\"\u003e\u003ccode\u003e52f94c7\u003c/code\u003e\u003c/a\u003e Improve codebase quality (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19999\"\u003e#19999\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/bfb5732b0b948d89c6803cb537bca168ec8e0a46\"\u003e\u003ccode\u003ebfb5732\u003c/code\u003e\u003c/a\u003e Fall back to the plugin \u003ccode\u003ebase\u003c/code\u003e when PostCSS has no \u003ccode\u003efrom\u003c/code\u003e option (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/3a890c35727fe0630c59b72dbec799d02e3c4800\"\u003e\u003ccode\u003e3a890c3\u003c/code\u003e\u003c/a\u003e Bump dependencies (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-postcss\"\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 \u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.58.2 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equ...\n\n_Description has been truncated_","html_url":"https://github.com/buggyblues/shadow/pull/335","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/buggyblues%2Fshadow/issues/335","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/335/packages"},{"uuid":"4556242045","node_id":"PR_kwDORH7BOc7hByyJ","number":1076,"state":"open","title":"build(deps-dev): Bump @playwright/test from 1.59.1 to 1.60.0","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-31T01:34:09.000Z","updated_at":"2026-05-31T01:42:47.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps-dev): Bump","packages":[{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.59.1 to 1.60.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@playwright/test\u0026package-manager=npm_and_yarn\u0026previous-version=1.59.1\u0026new-version=1.60.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/siro33950/releash/pull/1076","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/siro33950%2Freleash/issues/1076","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1076/packages"},{"uuid":"4555804740","node_id":"PR_kwDOB6BcMc7hAgdk","number":746,"state":"open","title":"Bump @playwright/test from 1.58.2 to 1.60.0","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T21:52:33.000Z","updated_at":"2026-05-30T21:54:28.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.58.2 to 1.60.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@playwright/test\u0026package-manager=npm_and_yarn\u0026previous-version=1.58.2\u0026new-version=1.60.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/NYPL/nypl-library-card-app/pull/746","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/NYPL%2Fnypl-library-card-app/issues/746","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/746/packages"},{"uuid":"4555545446","node_id":"PR_kwDOQv1DUM7g_vME","number":171,"state":"closed","title":"chore(deps-dev): bump the development-dependencies group across 1 directory with 29 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-05-30T23:14:43.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-30T20:06:05.000Z","updated_at":"2026-05-30T23:14:44.000Z","time_to_close":11318,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"development-dependencies","update_count":29,"packages":[{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tailwindcss/postcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/vite","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":"@types/node","old_version":"20.19.35","new_version":"20.19.41","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.1","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.1","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitest/coverage-v8","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/ui","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"autoprefixer","old_version":"10.4.27","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"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":"eslint","old_version":"10.0.2","new_version":"10.4.1","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":"fast-check","old_version":"4.5.3","new_version":"4.8.0","repository_url":"https://github.com/dubzzz/fast-check"},{"name":"globals","old_version":"17.4.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"happy-dom","old_version":"20.7.0","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jsdom","old_version":"28.1.0","new_version":"29.1.1","repository_url":"https://github.com/jsdom/jsdom"},{"name":"lint-staged","old_version":"16.3.1","new_version":"17.0.6","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"rollup","old_version":"4.59.0","new_version":"4.60.4","repository_url":"https://github.com/rollup/rollup"},{"name":"turbo","old_version":"2.8.12","new_version":"2.9.16","repository_url":"https://github.com/vercel/turborepo"},{"name":"typescript-eslint","old_version":"8.56.1","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development-dependencies group with 26 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.1` | `4.3.0` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `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| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `20.19.35` | `20.19.41` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.1` | `8.60.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.1` | `8.60.0` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.0.18` | `4.1.7` |\n| [@vitest/ui](https://github.com/vitest-dev/vitest/tree/HEAD/packages/ui) | `4.0.18` | `4.1.7` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.27` | `10.5.0` |\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| [eslint](https://github.com/eslint/eslint) | `10.0.2` | `10.4.1` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [fast-check](https://github.com/dubzzz/fast-check/tree/HEAD/packages/fast-check) | `4.5.3` | `4.8.0` |\n| [globals](https://github.com/sindresorhus/globals) | `17.4.0` | `17.6.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.7.0` | `20.9.0` |\n| [jsdom](https://github.com/jsdom/jsdom) | `28.1.0` | `29.1.1` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.3.1` | `17.0.6` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [rollup](https://github.com/rollup/rollup) | `4.59.0` | `4.60.4` |\n| [turbo](https://github.com/vercel/turborepo) | `2.8.12` | `2.9.16` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.1` | `8.60.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.14` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n\n\nUpdates `@playwright/test` from 1.58.2 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/postcss` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/postcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/postcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/12eb5ae7b6026ff64c04f889b2221418d772da72\"\u003e\u003ccode\u003e12eb5ae\u003c/code\u003e\u003c/a\u003e Cleanup noisy test output (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4255671c5f792c42808ecd6b2dec27c16e3c559e\"\u003e\u003ccode\u003e4255671\u003c/code\u003e\u003c/a\u003e Improve snapshot tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52f94c74bb491e9c3641ce322a0ef90fb3c45de6\"\u003e\u003ccode\u003e52f94c7\u003c/code\u003e\u003c/a\u003e Improve codebase quality (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19999\"\u003e#19999\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/bfb5732b0b948d89c6803cb537bca168ec8e0a46\"\u003e\u003ccode\u003ebfb5732\u003c/code\u003e\u003c/a\u003e Fall back to the plugin \u003ccode\u003ebase\u003c/code\u003e when PostCSS has no \u003ccode\u003efrom\u003c/code\u003e option (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/3a890c35727fe0630c59b72dbec799d02e3c4800\"\u003e\u003ccode\u003e3a890c3\u003c/code\u003e\u003c/a\u003e Bump dependencies (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-postcss\"\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 \u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/vite` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/vite's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/vite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/db27049caaae08978995f25b61f8336f543a4640\"\u003e\u003ccode\u003edb27049\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​tailwindcss/vite\u003c/code\u003e): include \u003ca href=\"https://github.com/variant\"\u003e\u003ccode\u003e@​variant\u003c/code\u003e\u003c/a\u003e in feature detection (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/5a799900d4b43ca4902398a38c6f0a5b37a98ed9\"\u003e\u003ccode\u003e5a79990\u003c/code\u003e\u003c/a\u003e Always resolve relative files, relative to the current .css file (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/f3fdda2a5cb9de50c897c79003aa58182cd9269b\"\u003e\u003ccode\u003ef3fdda2\u003c/code\u003e\u003c/a\u003e fix(vite): avoid resolving JS plugins to browser CSS entries (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/5cb1efdf416a6d37012d31cc1306c41cb35bbdc1\"\u003e\u003ccode\u003e5cb1efd\u003c/code\u003e\u003c/a\u003e fix(vite): resolve tsconfig paths in CSS and JS resolvers (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19803\"\u003e#19803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d596b0c43d36ad5099c983930fb155e089cbc291\"\u003e\u003ccode\u003ed596b0c\u003c/code\u003e\u003c/a\u003e 4.2.2 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19821\"\u003e#19821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-vite\"\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 \u003ccode\u003e@​tailwindcss/vite\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-query-devtools` from 5.91.3 to 5.100.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query-devtools's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\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/TanStack/query/blob/main/packages/react-query-devtools/CHANGELOG.md\"\u003e@​tanstack/react-query-devtools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/4d130b992d2ac396d75f921bfc530dd3a9d50577\"\u003e\u003ccode\u003e4d130b9\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/3d21cacdec3028b700c4c2e3e0ff8dbe7a235e8c\"\u003e\u003ccode\u003e3d21cac\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\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/TanStack/query/commit/ba6e7beebd50143408f01fcf5d9aee2ec1486f60\"\u003e\u003ccode\u003eba6e7be\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10767\"\u003e#10767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/05cf2bc0a4eae64959dc8a40152e2878190c971b\"\u003e\u003ccode\u003e05cf2bc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10758\"\u003e#10758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/5ff4f6936bb66a64267eb4413430f956eecf7248\"\u003e\u003ccode\u003e5ff4f69\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10755\"\u003e#10755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/03eba38ae9f9367022316d802d827a8460edcab7\"\u003e\u003ccode\u003e03eba38\u003c/code\u003e\u003c/a\u003e test(react-query-devtools): add tests for missing 'QueryClient', context prov...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3ae42619e5713b2fd6916760e84f7c9ddaa7a317\"\u003e\u003ccode\u003e3ae4261\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10620\"\u003e#10620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query-devtools@5.100.14/packages/react-query-devtools\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@types/node` from 20.19.35 to 20.19.41\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/node\"\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.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.1 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.c...\n\n_Description has been truncated_","html_url":"https://github.com/brandonlacoste9-tech/ZyeuteV5/pull/171","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonlacoste9-tech%2FZyeuteV5/issues/171","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/171/packages"},{"uuid":"4555364383","node_id":"PR_kwDOCwJcbs7g_LjM","number":1421,"state":"open","title":"Bump the development group across 1 directory with 15 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T18:56:52.000Z","updated_at":"2026-05-30T18:56:56.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"development","update_count":15,"packages":[{"name":"@changesets/changelog-github","old_version":"0.5.2","new_version":"0.7.0","repository_url":"https://github.com/changesets/changesets"},{"name":"@changesets/cli","old_version":"2.29.8","new_version":"2.31.0","repository_url":"https://github.com/changesets/changesets"},{"name":"markdownlint-cli","old_version":"0.46.0","new_version":"0.48.0","repository_url":"https://github.com/igorshubovych/markdownlint-cli"},{"name":"vitest-browser-react","old_version":"2.0.2","new_version":"2.2.0","repository_url":"https://github.com/vitest-community/vitest-browser-react"},{"name":"node-html-parser","old_version":"6.1.13","new_version":"7.1.0","repository_url":"https://github.com/taoqf/node-fast-html-parser"},{"name":"@faker-js/faker","old_version":"7.6.0","new_version":"10.4.0","repository_url":"https://github.com/faker-js/faker"},{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"lodash","old_version":"4.17.21","new_version":"4.18.1","repository_url":"https://github.com/lodash/lodash"},{"name":"@types/lodash","old_version":"4.17.21","new_version":"4.17.24","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"uuid","old_version":"11.1.0","new_version":"14.0.0","repository_url":"https://github.com/uuidjs/uuid"},{"name":"tsx","old_version":"4.20.6","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"},{"name":"@tailwindcss/browser","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@types/estree","old_version":"1.0.8","new_version":"1.0.9","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"prettier","old_version":"3.7.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"unist-util-visit","old_version":"5.0.0","new_version":"5.1.0","repository_url":"https://github.com/syntax-tree/unist-util-visit"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development group with 15 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@changesets/changelog-github](https://github.com/changesets/changesets) | `0.5.2` | `0.7.0` |\n| [@changesets/cli](https://github.com/changesets/changesets) | `2.29.8` | `2.31.0` |\n| [markdownlint-cli](https://github.com/igorshubovych/markdownlint-cli) | `0.46.0` | `0.48.0` |\n| [vitest-browser-react](https://github.com/vitest-community/vitest-browser-react) | `2.0.2` | `2.2.0` |\n| [node-html-parser](https://github.com/taoqf/node-fast-html-parser) | `6.1.13` | `7.1.0` |\n| [@faker-js/faker](https://github.com/faker-js/faker) | `7.6.0` | `10.4.0` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [lodash](https://github.com/lodash/lodash) | `4.17.21` | `4.18.1` |\n| [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) | `4.17.21` | `4.17.24` |\n| [uuid](https://github.com/uuidjs/uuid) | `11.1.0` | `14.0.0` |\n| [tsx](https://github.com/privatenumber/tsx) | `4.20.6` | `4.22.3` |\n| [@tailwindcss/browser](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-browser) | `4.2.1` | `4.3.0` |\n| [@types/estree](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/estree) | `1.0.8` | `1.0.9` |\n| [prettier](https://github.com/prettier/prettier) | `3.7.1` | `3.8.3` |\n| [unist-util-visit](https://github.com/syntax-tree/unist-util-visit) | `5.0.0` | `5.1.0` |\n\n\nUpdates `@changesets/changelog-github` from 0.5.2 to 0.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/changesets/changesets/releases\"\u003e@​changesets/changelog-github's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​changesets/changelog-github\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.7.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1255\"\u003e#1255\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/94578cf164aa7abcb12b97dd3a55d12a324f4fe8\"\u003e\u003ccode\u003e94578cf\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Kauhsa\"\u003e\u003ccode\u003e@​Kauhsa\u003c/code\u003e\u003c/a\u003e! - Added \u003ccode\u003edisableThanks\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​changesets/changelog-github\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.6.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1850\"\u003e#1850\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/fd0bc2e997a7bf603415489d10fcac0ca129badf\"\u003e\u003ccode\u003efd0bc2e\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mixelburg\"\u003e\u003ccode\u003e@​mixelburg\u003c/code\u003e\u003c/a\u003e! - Linkify issue references in changelog entries.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1810\"\u003e#1810\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/27fd8f41dddafcc2e96e7df39dca04d92f916a0a\"\u003e\u003ccode\u003e27fd8f4\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/hirasso\"\u003e\u003ccode\u003e@​hirasso\u003c/code\u003e\u003c/a\u003e! - Replace deprecated \u003ccode\u003eString.prototype.trimRight\u003c/code\u003e with \u003ca href=\"https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/trimEnd\"\u003e\u003ccode\u003eString.prototype.trimEnd\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/changesets/changesets/commit/d4b8ad8158fe4d900abc5052dacaa8be1f41a232\"\u003e\u003ccode\u003ed4b8ad8\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/changesets/changesets/commit/e462d892af560d0e3cf5d2f04da230751fbd05ca\"\u003e\u003ccode\u003ee462d89\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/get-github-info\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.8.0\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/changesets/changesets/commit/d1ef2d8cc11f86042a82f0cf7b125021e24dafc4\"\u003e\u003ccode\u003ed1ef2d8\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1950\"\u003e#1950\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/7af587636b8e793cc43fc6a52d32598193fcb68e\"\u003e\u003ccode\u003e7af5876\u003c/code\u003e\u003c/a\u003e Restrict \u003ccode\u003epublish\u003c/code\u003e job to the \u003ccode\u003enpm\u003c/code\u003e env (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1972\"\u003e#1972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/ff767d2da25173bcab643826702b2af74cbf08cf\"\u003e\u003ccode\u003eff767d2\u003c/code\u003e\u003c/a\u003e Sync config-file-options documentation with schema.json and source code (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1683\"\u003e#1683\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/951094babb7c356536c243e9cca0faa3ec86360a\"\u003e\u003ccode\u003e951094b\u003c/code\u003e\u003c/a\u003e fix: pin 2 unpinned action(s) (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1915\"\u003e#1915\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/94578cf164aa7abcb12b97dd3a55d12a324f4fe8\"\u003e\u003ccode\u003e94578cf\u003c/code\u003e\u003c/a\u003e Added \u003ccode\u003edisableThanks\u003c/code\u003e option (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1255\"\u003e#1255\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/d87334df92a36788e778b21e2bc603beb754f0d5\"\u003e\u003ccode\u003ed87334d\u003c/code\u003e\u003c/a\u003e Support dark mode banner in readme (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1943\"\u003e#1943\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/87472a757062402ca121bd168d693a1be866cf45\"\u003e\u003ccode\u003e87472a7\u003c/code\u003e\u003c/a\u003e Update .vscode/settings.json (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1944\"\u003e#1944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/317a373aef2639e4ca2804f20aeb4af5338c41ca\"\u003e\u003ccode\u003e317a373\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003epublish_pr\u003c/code\u003e job\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/9cce6db18ddecbf7f9cded45254b9905b19a7516\"\u003e\u003ccode\u003e9cce6db\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1897\"\u003e#1897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/d2121dc3d86b55f76de6022ccfcde843ed4b884a\"\u003e\u003ccode\u003ed2121dc\u003c/code\u003e\u003c/a\u003e Fix npm auth for path-based registries during publish by preserving configure...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/changesets/changesets/compare/@changesets/read@0.5.2...@changesets/changelog-github@0.7.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 \u003ccode\u003e@​changesets/changelog-github\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@changesets/cli` from 2.29.8 to 2.31.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/changesets/changesets/releases\"\u003e@​changesets/cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​changesets/cli\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.31.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/changesets/changesets/pull/1889\"\u003e#1889\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/96ca062272605c14f77a64043f50a0a3a278c57f\"\u003e\u003ccode\u003e96ca062\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mixelburg\"\u003e\u003ccode\u003e@​mixelburg\u003c/code\u003e\u003c/a\u003e! - Error on unsupported flags for individual CLI commands and print the matching command usage to make mistakes easier to spot.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1873\"\u003e#1873\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/42943b74d7a455ed03b93dd85e1c0a15f45db37f\"\u003e\u003ccode\u003e42943b7\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mixelburg\"\u003e\u003ccode\u003e@​mixelburg\u003c/code\u003e\u003c/a\u003e! - Respond to \u003ccode\u003e--help\u003c/code\u003e on all subcommands. Previously, \u003ccode\u003e--help\u003c/code\u003e was only handled when it was the sole argument; passing it alongside a subcommand (e.g. \u003ccode\u003echangeset version --help\u003c/code\u003e) would silently execute the command instead. Now \u003ccode\u003e--help\u003c/code\u003e always exits early and prints per-command usage when a known subcommand is provided, or the general help text otherwise.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/d2121dc3d86b55f76de6022ccfcde843ed4b884a\"\u003e\u003ccode\u003ed2121dc\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Andarist\"\u003e\u003ccode\u003e@​Andarist\u003c/code\u003e\u003c/a\u003e! - Fix npm auth for path-based registries during publish by preserving configured registry URLs instead of normalizing them.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1888\"\u003e#1888\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/036fdd451367226d0f2cd8af1e0a7f37a65e3464\"\u003e\u003ccode\u003e036fdd4\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mixelburg\"\u003e\u003ccode\u003e@​mixelburg\u003c/code\u003e\u003c/a\u003e! - Fix several \u003ccode\u003echangeset version\u003c/code\u003e issues with workspace protocol dependencies. Valid explicit \u003ccode\u003eworkspace:\u003c/code\u003e ranges and aliases are no longer rewritten unnecessarily, and workspace path references are handled correctly during versioning.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1903\"\u003e#1903\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/5c4731fea82ce880500ac5e1c55ff372f7a4efe2\"\u003e\u003ccode\u003e5c4731f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Andarist\"\u003e\u003ccode\u003e@​Andarist\u003c/code\u003e\u003c/a\u003e! - Gracefully handle stale \u003ccode\u003enpm info\u003c/code\u003e data leading to duplicate publish attempts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1867\"\u003e#1867\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/f61e7166c349d4934e4acc9b47f3d028c212ecc1\"\u003e\u003ccode\u003ef61e716\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Andarist\"\u003e\u003ccode\u003e@​Andarist\u003c/code\u003e\u003c/a\u003e! - Improved detection for \u003ccode\u003epublished\u003c/code\u003e state of prerelease-only packages without \u003ccode\u003elatest\u003c/code\u003e dist-tag on GitHub Packages registry.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/changesets/changesets/commit/036fdd451367226d0f2cd8af1e0a7f37a65e3464\"\u003e\u003ccode\u003e036fdd4\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/changesets/changesets/commit/036fdd451367226d0f2cd8af1e0a7f37a65e3464\"\u003e\u003ccode\u003e036fdd4\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/changesets/changesets/commit/036fdd451367226d0f2cd8af1e0a7f37a65e3464\"\u003e\u003ccode\u003e036fdd4\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/assemble-release-plan\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.0.10\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/get-dependents-graph\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.1.4\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/apply-release-plan\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.1.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/get-release-plan\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.0.16\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/config\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.1.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​changesets/cli\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.30.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/changesets/changesets/pull/1840\"\u003e#1840\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/057cca222321816b6c8c6f6c52130185b364de36\"\u003e\u003ccode\u003e057cca2\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/wotan-allfather\"\u003e\u003ccode\u003e@​wotan-allfather\u003c/code\u003e\u003c/a\u003e! - Add \u003ccode\u003e--since\u003c/code\u003e flag to \u003ccode\u003eadd\u003c/code\u003e command\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eadd\u003c/code\u003e command now supports a \u003ccode\u003e--since\u003c/code\u003e flag that allows you to specify which branch, tag, or git ref to use when detecting changed packages. This is useful for gitflow workflows where you have multiple target branches and the \u003ccode\u003ebaseBranch\u003c/code\u003e config option doesn't cover all use cases.\u003c/p\u003e\n\u003cp\u003eExample: \u003ccode\u003echangeset add --since=develop\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eIf not provided, the command falls back to the \u003ccode\u003ebaseBranch\u003c/code\u003e value in your \u003ccode\u003e.changeset/config.json\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1845\"\u003e#1845\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/2b4a66a36497fd5504186dcc6ae9e287c8403de6\"\u003e\u003ccode\u003e2b4a66a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Andarist\"\u003e\u003ccode\u003e@​Andarist\u003c/code\u003e\u003c/a\u003e! - Delegate OTP prompting to the package manager instead of handling it in-process. This allows Changesets to use the package manager's native web auth support.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1774\"\u003e#1774\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/667fe5aacf04dbefcf2532584ff2753b8417855a\"\u003e\u003ccode\u003e667fe5a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/bluwy\"\u003e\u003ccode\u003e@​bluwy\u003c/code\u003e\u003c/a\u003e! - Support importing custom \u003ccode\u003ecommit\u003c/code\u003e option ES module. Previously, it used \u003ccode\u003erequire()\u003c/code\u003e which only worked for CJS modules, however now it uses \u003ccode\u003eimport()\u003c/code\u003e which supports both CJS and ES modules.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1839\"\u003e#1839\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/73b18099517b00a3c7b70c417b7f7f1bfaa24931\"\u003e\u003ccode\u003e73b1809\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leochiu-a\"\u003e\u003ccode\u003e@​leochiu-a\u003c/code\u003e\u003c/a\u003e! - Add a \u003ccode\u003e--message\u003c/code\u003e (\u003ccode\u003e-m\u003c/code\u003e) flag to \u003ccode\u003echangeset add\u003c/code\u003e (and default \u003ccode\u003echangeset\u003c/code\u003e) so the changeset summary can be provided from the command line. When \u003ccode\u003e--message\u003c/code\u003e is present, the summary prompt is skipped while the final confirmation step is kept.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1806\"\u003e#1806\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/0e8e01e93358bdc8c318c608dd3b0e4af8219049\"\u003e\u003ccode\u003e0e8e01e\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/luisadame\"\u003e\u003ccode\u003e@​luisadame\u003c/code\u003e\u003c/a\u003e! - Changeset CLI can now be run from the nested directories in the project, where the \u003ccode\u003e.changeset\u003c/code\u003e directory has to be found in one of the parent directories\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1849\"\u003e#1849\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/9dc32308e4d208964b648a788ba4eee1003c273c\"\u003e\u003ccode\u003e9dc3230\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Andarist\"\u003e\u003ccode\u003e@​Andarist\u003c/code\u003e\u003c/a\u003e! - Compute the terminal's size lazily to avoid spurious stderr output in non-interactive mode\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1857\"\u003e#1857\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/2a7302577d2923dc7db5025003d8aa58fb627ff9\"\u003e\u003ccode\u003e2a73025\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mixelburg\"\u003e\u003ccode\u003e@​mixelburg\u003c/code\u003e\u003c/a\u003e! - Fix confusing prompt labels when entering changeset summary after external editor fallback\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1842\"\u003e#1842\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/6df3a5e95522a0210cb2b5619588a75f32b502c6\"\u003e\u003ccode\u003e6df3a5e\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/RodrigoHamuy\"\u003e\u003ccode\u003e@​RodrigoHamuy\u003c/code\u003e\u003c/a\u003e! - Allow private packages to depend on skipped packages without requiring them to also be skipped. Private packages are not published to npm, so it is safe for them to have dependencies on ignored or unversioned packages.\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\u003eSee full diff in \u003ca href=\"https://github.com/changesets/changesets/commits/@changesets/cli@2.31.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 \u003ccode\u003e@​changesets/cli\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `markdownlint-cli` from 0.46.0 to 0.48.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/releases\"\u003emarkdownlint-cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.48.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate all dependencies via \u003ccode\u003eDependabot\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.47.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd output and exit code support for warnings\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003emarkdownlint\u003c/code\u003e dependency to \u003ccode\u003e0.40.0\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eMD011\u003c/code\u003e/\u003ccode\u003eMD013\u003c/code\u003e/\u003ccode\u003eMD051\u003c/code\u003e/\u003ccode\u003eMD060\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpdate all dependencies via \u003ccode\u003eDependabot\u003c/code\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/igorshubovych/markdownlint-cli/commit/e72a3ca1632f0b11a07d171449fe447a7ff6795e\"\u003e\u003ccode\u003ee72a3ca\u003c/code\u003e\u003c/a\u003e Bump version 0.48.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/02c613244e102596373d7fe5e2490e4ab71f294f\"\u003e\u003ccode\u003e02c6132\u003c/code\u003e\u003c/a\u003e Delete and recreate package-lock.json via \u0026quot;npm install\u0026quot;.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/800b47cc24e662e0f97340d9675082f7f4a83a9d\"\u003e\u003ccode\u003e800b47c\u003c/code\u003e\u003c/a\u003e Bump ava from 6.4.1 to 7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/e6eb97c2d4a56b505e5430b26b5408925f88f80a\"\u003e\u003ccode\u003ee6eb97c\u003c/code\u003e\u003c/a\u003e Bump minimatch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/61da922d8f906b1e377cf21f0db0a3b2b2c6d311\"\u003e\u003ccode\u003e61da922\u003c/code\u003e\u003c/a\u003e Bump tar from 7.5.7 to 7.5.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/3731696fb0cfd49ce7cb68ab53d187505d2fd400\"\u003e\u003ccode\u003e3731696\u003c/code\u003e\u003c/a\u003e Bump minimatch from 10.2.0 to 10.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/d60f5af730c855a26017784c73b82e4cbe5d6163\"\u003e\u003ccode\u003ed60f5af\u003c/code\u003e\u003c/a\u003e Bump minimatch from 10.1.2 to 10.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/587b174eac1da62cb138642273204597475b76d7\"\u003e\u003ccode\u003e587b174\u003c/code\u003e\u003c/a\u003e Bump markdown-it from 14.1.0 to 14.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/c3bfec983fb2b11f1876a00e2217f39e0087f27a\"\u003e\u003ccode\u003ec3bfec9\u003c/code\u003e\u003c/a\u003e Bump minimatch from 10.1.1 to 10.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/1fba9587576b1988216d1e215b2c6d5f687e4381\"\u003e\u003ccode\u003e1fba958\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003e@​isaacs/brace-expansion\u003c/code\u003e from 5.0.0 to 5.0.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/compare/v0.46.0...v0.48.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vitest-browser-react` from 2.0.2 to 2.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/releases\"\u003evitest-browser-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ecreateRootOptions\u003c/code\u003e to \u003ccode\u003eComponentRenderOptions\u003c/code\u003e  -  by \u003ca href=\"https://github.com/nstepien\"\u003e\u003ccode\u003e@​nstepien\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/53\"\u003evitest-community/vitest-browser-react#53\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/8803d53\"\u003e\u003c!-- raw HTML omitted --\u003e(8803d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003epage.renderHook\u003c/code\u003e  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/54\"\u003evitest-community/vitest-browser-react#54\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/3838945\"\u003e\u003c!-- raw HTML omitted --\u003e(38389)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.1.0...v2.2.0\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIntegrate trace mark with render  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/47\"\u003evitest-community/vitest-browser-react#47\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/2b9835d\"\u003e\u003c!-- raw HTML omitted --\u003e(2b983)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate links to api documentation  -  by \u003ca href=\"https://github.com/nilshartmann\"\u003e\u003ccode\u003e@​nilshartmann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/48\"\u003evitest-community/vitest-browser-react#48\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/91885dd\"\u003e\u003c!-- raw HTML omitted --\u003e(91885)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.0.5...v2.1.0\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.0.5\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid act warnings  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/46\"\u003evitest-community/vitest-browser-react#46\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/76a2765\"\u003e\u003c!-- raw HTML omitted --\u003e(76a27)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.0.4...v2.0.5\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.0.4\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInject a consistent testid  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/45\"\u003evitest-community/vitest-browser-react#45\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/f5c883a\"\u003e\u003c!-- raw HTML omitted --\u003e(f5c88)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.0.3...v2.0.4\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.0.3\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a simple counter for act  -  by \u003ca href=\"https://github.com/ocavue\"\u003e\u003ccode\u003e@​ocavue\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/43\"\u003evitest-community/vitest-browser-react#43\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/8b122d2\"\u003e\u003c!-- raw HTML omitted --\u003e(8b122)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAttach a stable testid to default \u003ccode\u003ebaseElement\u003c/code\u003e and \u003ccode\u003econtainer\u003c/code\u003e  -  by \u003ca href=\"https://github.com/nizans\"\u003e\u003ccode\u003e@​nizans\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/44\"\u003evitest-community/vitest-browser-react#44\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/e8acbcb\"\u003e\u003c!-- raw HTML omitted --\u003e(e8acb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWarning:\u003c/strong\u003e If you are using snapshots with \u003ccode\u003econtainer\u003c/code\u003e, update to Vitest 4.0.18 to avoid rendering injected \u003ccode\u003edata-testid\u003c/code\u003e attribute.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.0.2...v2.0.3\"\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-community/vitest-browser-react/commit/8de0ed7fb3a9a90df86e69489b722bb24ffeadbb\"\u003e\u003ccode\u003e8de0ed7\u003c/code\u003e\u003c/a\u003e chore: release v2.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/383894510b9fc5f8ce06678c473a546839b55084\"\u003e\u003ccode\u003e3838945\u003c/code\u003e\u003c/a\u003e feat: expose \u003ccode\u003epage.renderHook\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/54\"\u003e#54\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/8803d53b6b7a7dc2f55c6363188653efece4be5b\"\u003e\u003ccode\u003e8803d53\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003ecreateRootOptions\u003c/code\u003e to \u003ccode\u003eComponentRenderOptions\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/53\"\u003e#53\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/fa58d74d265ef4ed56d61df5f1c9907e7d9dcebe\"\u003e\u003ccode\u003efa58d74\u003c/code\u003e\u003c/a\u003e chore: release v2.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/2b9835db315aa01afcde460d7c41d08634f31585\"\u003e\u003ccode\u003e2b9835d\u003c/code\u003e\u003c/a\u003e feat: integrate trace mark with render (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/47\"\u003e#47\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/91885dda84a285e96de5aeb7b172118515ca3e65\"\u003e\u003ccode\u003e91885dd\u003c/code\u003e\u003c/a\u003e fix: update links to api documentation (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/48\"\u003e#48\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/2ab4b715bc31ea2d27ae35ea4ecef71a25efe094\"\u003e\u003ccode\u003e2ab4b71\u003c/code\u003e\u003c/a\u003e chore: release v2.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/76a2765d64b3a01341105b0d7d8ca3800f4698aa\"\u003e\u003ccode\u003e76a2765\u003c/code\u003e\u003c/a\u003e fix: avoid act warnings (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/46\"\u003e#46\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/df16d16dbf4bf0714405260d1b5f7d751e5d49ac\"\u003e\u003ccode\u003edf16d16\u003c/code\u003e\u003c/a\u003e chore: release v2.0.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/f5c883a694316391190aa4b914ee8058276a8e44\"\u003e\u003ccode\u003ef5c883a\u003c/code\u003e\u003c/a\u003e fix: inject a consistent testid (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/45\"\u003e#45\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.0.2...v2.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `node-html-parser` from 6.1.13 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/taoqf/node-fast-html-parser/releases\"\u003enode-html-parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.1.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.2...v7.1.0\"\u003e7.1.0\u003c/a\u003e (2026-03-03)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd option closeAllOnClosing (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/44c900acc01b8923eb9e45c7b13d6bd148a8e9cd\"\u003e44c900a\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/294\"\u003e#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd preserveTagNesting option to maintain invalid HTML nesting \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/295\"\u003e#295\u003c/a\u003e (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/d604652cc7c963118ba16ec6bda1f4e01fb81c9e\"\u003ed604652\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd missing dev dependency: yarn (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/8679d3231e6dc1c93f99921d16b728aa9a578ce5\"\u003e8679d32\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.0.2\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.1...v7.0.2\"\u003e7.0.2\u003c/a\u003e (2026-01-07)\u003c/h3\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/227\"\u003e#227\u003c/a\u003e (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/51528c41ef2648d6c4dc1aecd14ee9d2b0083c4f\"\u003e51528c4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/294\"\u003e#294\u003c/a\u003e Closing tag is missing but valid HTML is still not parseable (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/950865fab5f4df7853b36712869b71c90f4d3a1b\"\u003e950865f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd missing dev dependency: yarn (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/6d73ea37c48f4170c35907869ba410c5122a9a1f\"\u003e6d73ea3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etest valid.js (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/a81fc46fab2507615b0362150d62568a6f52ee4e\"\u003ea81fc46\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.0.1\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.0...v7.0.1\"\u003e7.0.1\u003c/a\u003e (2024-12-26)\u003c/h3\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade node version (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/efd77ff93593922512b12216984ba778b2f46593\"\u003eefd77ff\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/taoqf/node-html-parser/blob/main/CHANGELOG.md\"\u003enode-html-parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.2...v7.1.0\"\u003e7.1.0\u003c/a\u003e (2026-03-03)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd option closeAllOnClosing (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/44c900acc01b8923eb9e45c7b13d6bd148a8e9cd\"\u003e44c900a\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/294\"\u003e#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd preserveTagNesting option to maintain invalid HTML nesting \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/295\"\u003e#295\u003c/a\u003e (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/d604652cc7c963118ba16ec6bda1f4e01fb81c9e\"\u003ed604652\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd missing dev dependency: yarn (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/8679d3231e6dc1c93f99921d16b728aa9a578ce5\"\u003e8679d32\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.1...v7.0.2\"\u003e7.0.2\u003c/a\u003e (2026-01-07)\u003c/h3\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/227\"\u003e#227\u003c/a\u003e (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/51528c41ef2648d6c4dc1aecd14ee9d2b0083c4f\"\u003e51528c4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/294\"\u003e#294\u003c/a\u003e Closing tag is missing but valid HTML is still not parseable (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/950865fab5f4df7853b36712869b71c90f4d3a1b\"\u003e950865f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd missing dev dependency: yarn (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/6d73ea37c48f4170c35907869ba410c5122a9a1f\"\u003e6d73ea3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etest valid.js (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/a81fc46fab2507615b0362150d62568a6f52ee4e\"\u003ea81fc46\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.0...v7.0.1\"\u003e7.0.1\u003c/a\u003e (2024-12-26)\u003c/h3\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade node version (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/efd77ff93593922512b12216984ba778b2f46593\"\u003eefd77ff\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v6.1.14...v7.0.0\"\u003e7.0.0\u003c/a\u003e (2024-12-26)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/277\"\u003e#277\u003c/a\u003e, for that change estarget to es6\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/277\"\u003e#277\u003c/a\u003e, for that change estarget to es6 (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/432a3e71ba219e76188bcc2e89e525e40911d164\"\u003e432a3e7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd tests for \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/227\"\u003e#227\u003c/a\u003e (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/5856ee2ef2a0dfef43d75f6d4d13c37c213f25cf\"\u003e5856ee2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v6.1.13...v6.1.14\"\u003e6.1.14\u003c/a\u003e (2024-05-14)\u003c/h3\u003e\n\u003ch3\u003eBug 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/taoqf/node-html-parser/commit/ea54b3aadd6a1d2bfeeef96ef980b3681e8fe4a3\"\u003e\u003ccode\u003eea54b3a\u003c/code\u003e\u003c/a\u003e chore(release): 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/3e1761938f14f49ffaf64f0a69c980a808ca6855\"\u003e\u003ccode\u003e3e17619\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/303\"\u003e#303\u003c/a\u003e from thomome/htmlElement-matches\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/405ccb29c690342aafe2b7efbf744d67027ab96c\"\u003e\u003ccode\u003e405ccb2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/299\"\u003e#299\u003c/a\u003e from ig3/close-tags\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/8c26d8694e3c1ca92b6ef2b286d5febf3d31e52a\"\u003e\u003ccode\u003e8c26d86\u003c/code\u003e\u003c/a\u003e fixed readme return type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/c1098fc5a05a4ddb3de271e2473103531d2aec5b\"\u003e\u003ccode\u003ec1098fc\u003c/code\u003e\u003c/a\u003e added tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/13c0b1bc0d7da560acbcef5643b0f391020c8d38\"\u003e\u003ccode\u003e13c0b1b\u003c/code\u003e\u003c/a\u003e added matches method to HTMLElement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/d604652cc7c963118ba16ec6bda1f4e01fb81c9e\"\u003e\u003ccode\u003ed604652\u003c/code\u003e\u003c/a\u003e feat: add preserveTagNesting option to maintain invalid HTML nesting \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/295\"\u003e#295\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/c4cc706482bcdf58e46b9a5e1ce5e969c0c94256\"\u003e\u003ccode\u003ec4cc706\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into close-tags\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/eac4de9c9c62b4739b7e959dface8749c5783ae8\"\u003e\u003ccode\u003eeac4de9\u003c/code\u003e\u003c/a\u003e Revert addition of yarn as a dependency\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/f7a190c596a8e153eb674502ffbe1ca5756b5773\"\u003e\u003ccode\u003ef7a190c\u003c/code\u003e\u003c/a\u003e chore(release): 7.0.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v6.1.13...v7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@faker-js/faker` from 7.6.0 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/faker-js/faker/releases\"\u003e@​faker-js/faker's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(locale): add Norwegian (nb_NO) country definition by \u003ca href=\"https://github.com/TomSchrier\"\u003e\u003ccode\u003e@​TomSchrier\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3714\"\u003efaker-js/faker#3714\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(docs): share refreshable code logic by \u003ca href=\"https://github.com/ST-DDT\"\u003e\u003ccode\u003e@​ST-DDT\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3739\"\u003efaker-js/faker#3739\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese cat breed definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3716\"\u003efaker-js/faker#3716\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(food): add plant-based dish variety by \u003ca href=\"https://github.com/stuckvgn\"\u003e\u003ccode\u003e@​stuckvgn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3745\"\u003efaker-js/faker#3745\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(locales): correct typos and capitalization in es_MX street names by \u003ca href=\"https://github.com/quserforgitp\"\u003e\u003ccode\u003e@​quserforgitp\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3737\"\u003efaker-js/faker#3737\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese bear definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3720\"\u003efaker-js/faker#3720\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: fi locale phone numbers by \u003ca href=\"https://github.com/andeke07\"\u003e\u003ccode\u003e@​andeke07\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3747\"\u003efaker-js/faker#3747\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(hacker): use helpers.fake() instead of helpers.mustache() in phrase() by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3736\"\u003efaker-js/faker#3736\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update all non-major dependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3752\"\u003efaker-js/faker#3752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​vitest/eslint-plugin\u003c/code\u003e to v1.6.9 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3749\"\u003efaker-js/faker#3749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update eslint by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3751\"\u003efaker-js/faker#3751\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese cattle breed definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3717\"\u003efaker-js/faker#3717\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese bird definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3719\"\u003efaker-js/faker#3719\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese fish definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3721\"\u003efaker-js/faker#3721\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): lock file maintenance by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3738\"\u003efaker-js/faker#3738\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update devdependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3750\"\u003efaker-js/faker#3750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update all non-major dependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3754\"\u003efaker-js/faker#3754\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(locale): filter and cleanup PersonEntryDefintions data by \u003ca href=\"https://github.com/ST-DDT\"\u003e\u003ccode\u003e@​ST-DDT\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3266\"\u003efaker-js/faker#3266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese horse breed definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3718\"\u003efaker-js/faker#3718\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: migrate vitepress from v1 to v2.0.0-alpha.17 by \u003ca href=\"https://github.com/Shinigami92\"\u003e\u003ccode\u003e@​Shinigami92\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3757\"\u003efaker-js/faker#3757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update devdependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3755\"\u003efaker-js/faker#3755\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): lock file maintenance by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3756\"\u003efaker-js/faker#3756\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update mcr.microsoft.com/devcontainers/typescript-node:24 docker digest to 3ff0e3f by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3762\"\u003efaker-js/faker#3762\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update eslint by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3763\"\u003efaker-js/faker#3763\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update devdependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3764\"\u003efaker-js/faker#3764\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update vitest by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3765\"\u003efaker-js/faker#3765\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update pnpm/action-setup action to v5 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3766\"\u003efaker-js/faker#3766\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update all non-major dependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3767\"\u003efaker-js/faker#3767\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): lock file maintenance by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3758\"\u003efaker-js/faker#3758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(release): 10.4.0 by \u003ca href=\"https://github.com/fakerjs-bot\"\u003e\u003ccode\u003e@​fakerjs-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3768\"\u003efaker-js/faker#3768\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/stuckvgn\"\u003e\u003ccode\u003e@​stuckvgn\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3745\"\u003efaker-js/faker#3745\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/quserforgitp\"\u003e\u003ccode\u003e@​quserforgitp\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3737\"\u003efaker-js/faker#3737\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/andeke07\"\u003e\u003ccode\u003e@​andeke07\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3747\"\u003efaker-js/faker#3747\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/faker-js/faker/compare/v10.3.0...v10.4.0\"\u003ehttps://github.com/faker-js/faker/compare/v10.3.0...v10.4.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): lock file maintenance by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3689\"\u003efaker-js/faker#3689\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(location): state name to 'Trøndelag' for nb_NO by \u003ca href=\"https://github.com/Nilhenrik\"\u003e\u003ccode\u003e@​Nilhenrik\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3691\"\u003efaker-js/faker#3691\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(locale): remove empty string from Hebrew lorem words by \u003ca href=\"https://github.com/erezcor\"\u003e\u003ccode\u003e@​erezcor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3698\"\u003efaker-js/faker#3698\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest: add custom matcher \u0026quot;toStartWith\u0026quot; by \u003ca href=\"https://github.com/xDivisionByZerox\"\u003e\u003ccode\u003e@​xDivisionByZerox\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3700\"\u003efaker-js/faker#3700\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(person): \u003ccode\u003esexType\u003c/code\u003e can return \u003ccode\u003e'generic'\u003c/code\u003e by \u003ca href=\"https://github.com/ST-DDT\"\u003e\u003ccode\u003e@​ST-DDT\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3259\"\u003efaker-js/faker#3259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(locale): normalize system locale data by \u003ca href=\"https://github.com/xDivisionByZerox\"\u003e\u003ccode\u003e@​xDivisionByZerox\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3702\"\u003efaker-js/faker#3702\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese suffix definitions for person module by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3704\"\u003efaker-js/faker#3704\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese job definitions for person module by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3705\"\u003efaker-js/faker#3705\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/faker-js/faker/blob/next/CHANGELOG.md\"\u003e@​faker-js/faker's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/faker-js/faker/compare/v10.3.0...v10.4.0\"\u003e10.4.0\u003c/a\u003e (2026-03-23)\u003c/h2\u003e\n\u003ch3\u003eNew Locales\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese bear definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3720\"\u003e#3720\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/2a4b15cff44cec578b23b579d9bd8603887024ac\"\u003e2a4b15c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese bird definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3719\"\u003e#3719\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/dc31ff8f79c9811ed23ebea845ece4abd375aeaa\"\u003edc31ff8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese cat breed definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3716\"\u003e#3716\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/54af8a8ca051631350a727a2dc596e212b91061a\"\u003e54af8a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese cattle breed definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3717\"\u003e#3717\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/c2c7342d8d0bd93871659fa9150ce6f80364cf93\"\u003ec2c7342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese fish definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3721\"\u003e#3721\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/15fc36187225cff20037658dd9f9b6e076641ca9\"\u003e15fc361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese horse breed definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3718\"\u003e#3718\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/e02536ee5283e29961965dc3e4e56c74dc65c16f\"\u003ee02536e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Norwegian (nb_NO) country definition (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3714\"\u003e#3714\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/614b4e9eb7f86334619822d654063abc7026ee48\"\u003e614b4e9\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efi locale phone numbers (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3747\"\u003e#3747\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/7afa8b5628e51a8eba5e56d63d0ffc0ff2cea11f\"\u003e7afa8b5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003efood:\u003c/strong\u003e add plant-based dish variety (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3745\"\u003e#3745\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/41edf49c9eb32db4a70a57a3e0ab687b9ec4b6a5\"\u003e41edf49\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged Locales\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e filter and cleanup PersonEntryDefintions data (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3266\"\u003e#3266\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/67defc8b0b3d4006f2151889d4401a3f2aa00580\"\u003e67defc8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003elocales:\u003c/strong\u003e correct typos and capitalization in es_MX street names (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3737\"\u003e#3737\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/2b32c28b438307904a12e1271fbc4f2e614091b6\"\u003e2b32c28\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/faker-js/faker/compare/v10.2.0...v10.3.0\"\u003e10.3.0\u003c/a\u003e (2026-02-06)\u003c/h2\u003e\n\u003ch3\u003eNew Locales\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese  dog definition (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3715\"\u003e#3715\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/76c9df131a55f63da55101cc7cccff2f7928187c\"\u003e76c9df1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese color definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3707\"\u003e#3707\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/bbbb215ef6441ec7a3ebdd660fd2690074f69c67\"\u003ebbbb215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese food module (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3706\"\u003e#3706\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/71d55c09f15ab437444c57d0eebff4477f75b131\"\u003e71d55c0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese internet definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3708\"\u003e#3708\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/184a709825979c6d8d7c3ea240ac2485bed96296\"\u003e184a709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese job definitions for person module (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3705\"\u003e#3705\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/e7f3ccd2e5b0ba84455edb680dfcfa5d86ecdbaf\"\u003ee7f3ccd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese suffix definitions for person module (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3704\"\u003e#3704\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/45ad7d81682f65ab7fe37eea0633d7f0262cde87\"\u003e45ad7d8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Norwegian (nb_NO) continent definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3712\"\u003e#3712\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/c0f0f232adad715791cde3622939b463d925c165\"\u003ec0f0f23\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Norwegian (nb_NO) direction definition (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3713\"\u003e#3713\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/43b18fa0c540fdc2a3a61517377da63653802d25\"\u003e43b18fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Norwegian (nb_NO) sex definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3710\"\u003e#3710\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/76063f26574b48f7ea8fd918f18744f3276669ad\"\u003e76063f2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Norwegian (nb_NO) vehicle definition (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3732\"\u003e#3732\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/d1c32b0326298534f40986328296232af209eb19\"\u003ed1c32b0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003elocales:\u003c/strong\u003e add Norwegian (nb_NO) zodiac sign definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3711\"\u003e#3711\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/e306542867a4839fbe7eb8015c73db2f24bc6ceb\"\u003ee306542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eperson:\u003c/strong\u003e \u003ccode\u003esexType\u003c/code\u003e can return \u003ccode\u003e'generic'\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3259\"\u003e#3259\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/0e099a1033ae89de2f9810558c3c0257d78a50fe\"\u003e0e099a1\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/faker-js/faker/commit/b8abfc6415fe5be3a207b1b3dd4266905b924f84\"\u003e\u003ccode\u003eb8abfc6\u003c/code\u003e\u003c/a\u003e chore(release): 10.4.0 (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3768\"\u003e#3768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/7108155ee3eb0da742e7ef26bb3795b5b9331d9e\"\u003e\u003ccode\u003e7108155\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3758\"\u003e#3758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/5e6cf2b74dee98556df6f95a45e1603a80db731d\"\u003e\u003ccode\u003e5e6cf2b\u003c/code\u003e\u003c/a\u003e chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3767\"\u003e#3767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/91c944b7e8918af8f91c03e14f036063804b3e16\"\u003e\u003ccode\u003e91c944b\u003c/code\u003e\u003c/a\u003e chore(deps): update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3766\"\u003e#3766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/cb18595f83328f01a121928ab33135829e10c2f1\"\u003e\u003ccode\u003ecb18595\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3765\"\u003e#3765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/af25d6b0dbbf85c91dfc5f56f163fef3514035d1\"\u003e\u003ccode\u003eaf25d6b\u003c/code\u003e\u003c/a\u003e chore(deps): update devdependencies (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3764\"\u003e#3764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/2e72c27e2aff7b45f469b446203afaa47089f4f9\"\u003e\u003ccode\u003e2e72c27\u003c/code\u003e\u003c/a\u003e chore(deps): update eslint (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3763\"\u003e#3763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/9a18091c23ca7236e9481dccaab60d80b1495f5f\"\u003e\u003ccode\u003e9a18091\u003c/code\u003e\u003c/a\u003e chore(deps): update mcr.microsoft.com/devcontainers/typescript-node:24 docker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/aa7b6c017411d49df8afe2b6c4921978b7281b08\"\u003e\u003ccode\u003eaa7b6c0\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3756\"\u003e#3756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/89ba3459444ae5be0fe9c5f349ced863c4f95f7b\"\u003e\u003ccode\u003e89ba345\u003c/code\u003e\u003c/a\u003e chore(deps): update devdependencies (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3755\"\u003e#3755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/faker-js/faker/compare/v7.6.0...v10.4.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 \u003ccode\u003e@​faker-js/faker\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.58.2 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lodash` from 4.17.21 to 4.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lodash/lodash/releases\"\u003elodash's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.18.1\u003c/h2\u003e\n\u003ch2\u003eBugs\u003c/h2\u003e\n\u003cp\u003eFixes a \u003ccode\u003eReferenceError\u003c/code\u003e issue in \u003ccode\u003elodash\u003c/code\u003e \u003ccode\u003elodash-es\u003c/code\u003e \u003ccode\u003elodash-amd\u003c/code\u003e and \u003ccode\u003elodash.template\u003c/code\u003e when using the \u003ccode\u003etemplate\u003c/code\u003e and \u003ccode\u003efromPairs\u003c/code\u003e functions from the modular builds. See \u003ca href=\"https://redirect.github.com/lodash/lodash/issues/6167#issuecomment-4165269769\"\u003elodash/lodash#6167\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThese defects were related to how lodash distributions are built from the main branch using \u003ca href=\"https://github.com/lodash-archive/lodash-cli\"\u003ehttps://github.com/lodash-archive/lodash-cli\u003c/a\u003e. When internal dependencies change inside lodash functions, equivalent updates need to be made to a mapping in the lodash-cli. (hey, it was ahead of its time once upon a time!). We know this, but we missed it in the last release. It's the kind of thing that passes in CI, but fails bc the build is not the same thing you tested.\u003c/p\u003e\n\u003cp\u003eThere is no diff on main for this, but you can see the diffs for each of the npm packages on their respective branches:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elodash\u003c/code\u003e: \u003ca href=\"https://github.com/lodash/lodash/compare/4.18.0-npm...4.18.1-npm\"\u003ehttps://github.com/lodash/lodash/compare/4.18.0-npm...4.18.1-npm\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elodash-es\u003c/code\u003e: \u003ca href=\"https://github.com/lodash/lodash/compare/4.18.0-es...4.18.1-es\"\u003ehttps://github.com/lodash/lodash/compare/4.18.0-es...4.18.1-es\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elodash-amd\u003c/code\u003e: \u003ca href=\"https://github.com/lodash/lodash/compare/4.18.0-amd...4.18.1-amd\"\u003ehttps://github.com/lodash/lodash/compare/4.18.0-amd...4.18.1-amd\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elodash.template\u003c/code\u003e\u003ca href=\"https://github.com/lodash/lodash/compare/4.18.0-npm-packages...4.18.1-npm-packages\"\u003ehttps://github.com/lodash/lodash/compare/4.18.0-npm-packages...4.18.1-npm-packages\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.18.0\u003c/h2\u003e\n\u003ch2\u003ev4.18.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lodash/lodash/compare/4.17.23...4.18.0\"\u003ehttps://github.com/lodash/lodash/compare/4.17.23...4.18.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003e\u003ccode\u003e_.unset\u003c/code\u003e / \u003ccode\u003e_.omit\u003c/code\u003e\u003c/strong\u003e: Fixed prototype pollution via \u003ccode\u003econstructor\u003c/code\u003e/\u003ccode\u003eprototype\u003c/code\u003e path traversal (\u003ca href=\"https://github.com/lodash/lodash/security/advisories/GHSA-f23m-r3pf-42rh\"\u003eGHSA-f23m-r3pf-42rh\u003c/a\u003e, \u003ca href=\"https://github.com/lodash/lodash/commit/fe8d32eda854377349a4f922ab7655c8e5df9a0b\"\u003efe8d32e\u003c/a\u003e). Previously, array-wrapped path segments and primitive roots could bypass the existing guards, allowing deletion of properties from built-in prototypes. Now \u003ccode\u003econstructor\u003c/code\u003e and \u003ccode\u003eprototype\u003c/code\u003e are blocked unconditionally as non-terminal path keys, matching \u003ccode\u003ebaseSet\u003c/code\u003e. Calls that previously returned \u003ccode\u003etrue\u003c/code\u003e and deleted the property now return \u003ccode\u003efalse\u003c/code\u003e and leave the target untouched.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e\u003ccode\u003e_.template\u003c/code\u003e\u003c/strong\u003e: Fixed code injection via \u003ccode\u003eimports\u003c/code\u003e keys (\u003ca href=\"https://github.com/lodash/lodash/security/advisories/GHSA-r5fr-rjxr-66jc\"\u003eGHSA-r5fr-rjxr-66jc\u003c/a\u003e, CVE-2026-4800, \u003ca href=\"https://github.com/lodash/lodash/commit/879aaa93132d78c2f8d20c60279da9f8b21576d6\"\u003e879aaa9\u003c/a\u003e). Fixes an incomplete patch for CVE-2021-23337. The \u003ccode\u003evariable\u003c/code\u003e option was validated against \u003ccode\u003ereForbiddenIdentifierChars\u003c/code\u003e but \u003ccode\u003eimportsKeys\u003c/code\u003e was left unguarded, allowing code injection via the same \u003ccode\u003eFunction()\u003c/code\u003e constructor sink. \u003ccode\u003eimports\u003c/code\u003e keys containing forbidden identifier characters now throw \u003ccode\u003e\u0026quot;Invalid imports option passed into _.template\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd security notice for \u003ccode\u003e_.template\u003c/code\u003e in threat model and API docs (\u003ca href=\"https://redirect.github.com/lodash/lodash/pull/6099\"\u003e#6099\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocument \u003ccode\u003elower \u0026gt; upper\u003c/code\u003e behavior in \u003ccode\u003e_.random\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/lodash/lodash/pull/6115\"\u003e#6115\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix quotes in \u003ccode\u003e_.compact\u003c/code\u003e jsdoc (\u003ca href=\"https://redirect.github.com/lodash/lodash/pull/6090\"\u003e#6090\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003elodash.*\u003c/code\u003e modular packages\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lodash/lodash/pull/6157\"\u003eDiff\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe have also regenerated and published a select number of the \u003ccode\u003elodash.*\u003c/code\u003e modular packages.\u003c/p\u003e\n\u003cp\u003eThese modular packages had fallen out of sync significantly from the minor/patch updates to lodash. Specifically, we have brought the following packages up to parity w/ the latest lodash release because they have had CVEs on them in the past:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.orderby\"\u003elodash.orderby\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.tonumber\"\u003elodash.tonumber\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.trim\"\u003elodash.trim\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.trimend\"\u003elodash.trimend\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.sortedindexby\"\u003elodash.sortedindexby\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.zipobjectdeep\"\u003elodash.zipobjectdeep\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.unset\"\u003elodash.unset\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.omit\"\u003elodash.omit\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.template\"\u003elodash.template\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/lodash/lodash/commit/cb0b9b9212521c08e3eafe7c8cb0af1b42b6649e\"\u003e\u003ccode\u003ecb0b9b9\u003c/code\u003e\u003c/a\u003e release(patch): bump main to 4.18.1 (\u003ca href=\"https://redirect.github.com/lodash/lodash/issues/6177\"\u003e#6177\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/75535f57883b7225adb96de1cfc1cd4169cfcb51\"\u003e\u003ccode\u003e75535f5\u003c/code\u003e\u003c/a\u003e chore: prune stale advisory refs (\u003ca href=\"https://redirect.github.com/lodash/lodash/issues/6170\"\u003e#6170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/62e91bc6a39c98d85b9ada8c44d40593deaf82a4\"\u003e\u003ccode\u003e62e91bc\u003c/code\u003e\u003c/a\u003e docs: remove n_ Node.js \u0026lt; 6 REPL note from README (\u003ca href=\"https://redirect.github.com/lodash/lodash/issues/6165\"\u003e#6165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/59be2de61f8aa9461c7856533b51d31b7d8babc4\"\u003e\u003ccode\u003e59be2de\u003c/code\u003e\u003c/a\u003e release(minor): bump to 4.18.0 (\u003ca href=\"https://redirect.github.com/lodash/lodash/issues/6161\"\u003e#6161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/af634573030f979194871da7c68f79420992f53d\"\u003e\u003ccode\u003eaf63457\u003c/code\u003e\u003c/a\u003e fix: broken tests for _.template 879aaa9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/1073a7693e1727e0cf3641e5f71f75ddcf8de7c0\"\u003e\u003ccode\u003e1073a76\u003c/code\u003e\u003c/a\u003e fix: linting issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/879...\n\n_Description has been truncated_","html_url":"https://github.com/petyosi/react-virtuoso/pull/1421","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/petyosi%2Freact-virtuoso/issues/1421","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1421/packages"},{"uuid":"4555126908","node_id":"PR_kwDOSsaSU87g-e17","number":9,"state":"open","title":"npm(deps-dev): bump the development-dependencies group with 10 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T17:22:42.000Z","updated_at":"2026-05-30T17:29:20.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"npm(deps-dev): bump","group_name":"development-dependencies","update_count":10,"packages":[{"name":"@axe-core/react","old_version":"4.11.1","new_version":"4.11.3","repository_url":"https://github.com/dequelabs/axe-core-npm"},{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tailwindcss/postcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"eslint-config-next","old_version":"16.1.6","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"eslint-plugin-prettier","old_version":"5.5.5","new_version":"5.5.6","repository_url":"https://github.com/prettier/eslint-plugin-prettier"},{"name":"jest","old_version":"30.3.0","new_version":"30.4.2","repository_url":"https://github.com/jestjs/jest"},{"name":"jest-environment-jsdom","old_version":"30.3.0","new_version":"30.4.1","repository_url":"https://github.com/jestjs/jest"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"tailwindcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development-dependencies group with 10 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@axe-core/react](https://github.com/dequelabs/axe-core-npm) | `4.11.1` | `4.11.3` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.1` | `4.3.0` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.1.6` | `16.2.6` |\n| [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) | `5.5.5` | `5.5.6` |\n| [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) | `30.3.0` | `30.4.2` |\n| [jest-environment-jsdom](https://github.com/jestjs/jest/tree/HEAD/packages/jest-environment-jsdom) | `30.3.0` | `30.4.1` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.1` | `4.3.0` |\n\nUpdates `@axe-core/react` from 4.11.1 to 4.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dequelabs/axe-core-npm/releases\"\u003e@​axe-core/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.11.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: add create-release workflow by \u003ca href=\"https://github.com/Garbee\"\u003e\u003ccode\u003e@​Garbee\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1326\"\u003edequelabs/axe-core-npm#1326\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: merge master into develop by \u003ca href=\"https://github.com/attest-team-ci\"\u003e\u003ccode\u003e@​attest-team-ci\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1324\"\u003edequelabs/axe-core-npm#1324\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Update axe-core to v4.11.4 by \u003ca href=\"https://github.com/attest-team-ci\"\u003e\u003ccode\u003e@​attest-team-ci\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1330\"\u003edequelabs/axe-core-npm#1330\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: RC v4.11.3 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1332\"\u003edequelabs/axe-core-npm#1332\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: release v4.11.3 by \u003ca href=\"https://github.com/axe-core\"\u003e\u003ccode\u003e@​axe-core\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1335\"\u003edequelabs/axe-core-npm#1335\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/axe-core\"\u003e\u003ccode\u003e@​axe-core\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1335\"\u003edequelabs/axe-core-npm#1335\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dequelabs/axe-core-npm/compare/v4.11.2...v4.11.3\"\u003ehttps://github.com/dequelabs/axe-core-npm/compare/v4.11.2...v4.11.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 4.11.2\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate axe-core to v4.11.3 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1306\"\u003e#1306\u003c/a\u003e) (\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/71c41796f4cdf2aebcb5e49d1bf6896f4ad72a2a\"\u003e71c4179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ewdio:\u003c/strong\u003e support v9 wdio switchFrame and switchWindow (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1302\"\u003e#1302\u003c/a\u003e) (\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/4689273aead05133e161fe1d419a60224763ed7c\"\u003e4689273\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1164\"\u003e#1164\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/dequelabs/axe-core-npm/blob/develop/CHANGELOG.md\"\u003e@​axe-core/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChange Log\u003c/h1\u003e\n\u003cp\u003eAll notable changes to this project will be documented in this file.\nSee \u003ca href=\"https://conventionalcommits.org\"\u003eConventional Commits\u003c/a\u003e for commit guidelines.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/compare/v4.11.1...v4.11.2\"\u003e4.11.2\u003c/a\u003e (2026-04-14)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate axe-core to v4.11.3 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1306\"\u003e#1306\u003c/a\u003e) (\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/71c41796f4cdf2aebcb5e49d1bf6896f4ad72a2a\"\u003e71c4179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ewdio:\u003c/strong\u003e support v9 wdio switchFrame and switchWindow (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1302\"\u003e#1302\u003c/a\u003e) (\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/4689273aead05133e161fe1d419a60224763ed7c\"\u003e4689273\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1164\"\u003e#1164\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/dequelabs/axe-core-npm/commit/25fbfd2a7b4d38fcdca487d393192e811592f1ec\"\u003e\u003ccode\u003e25fbfd2\u003c/code\u003e\u003c/a\u003e chore: release v4.11.3 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1335\"\u003e#1335\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/dad3572195f68304561b28fc12980d24d069e0d3\"\u003e\u003ccode\u003edad3572\u003c/code\u003e\u003c/a\u003e chore: RC v4.11.3 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1332\"\u003e#1332\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/582a7fc2e16e7f5a5aa3d0cd28b31882b4504996\"\u003e\u003ccode\u003e582a7fc\u003c/code\u003e\u003c/a\u003e chore: RC v4.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/eed87f56b9808b3def657741c9c5023d7338583c\"\u003e\u003ccode\u003eeed87f5\u003c/code\u003e\u003c/a\u003e fix: Update axe-core to v4.11.4 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/57c54378dc0d829ea90562c1f192757df03839d3\"\u003e\u003ccode\u003e57c5437\u003c/code\u003e\u003c/a\u003e chore: merge master into develop (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1324\"\u003e#1324\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/da56b5d6a0690a680e21b7f698a3ad9ed7497a10\"\u003e\u003ccode\u003eda56b5d\u003c/code\u003e\u003c/a\u003e chore: add create-release workflow (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1326\"\u003e#1326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/310de0a8b094d9575502a92ce898b7811e4f3a00\"\u003e\u003ccode\u003e310de0a\u003c/code\u003e\u003c/a\u003e chore: Release 4.11.2 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1323\"\u003e#1323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/39d99670b124852b51390221f1b4c43ea7ec1495\"\u003e\u003ccode\u003e39d9967\u003c/code\u003e\u003c/a\u003e chore: RC v4.11.2 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1317\"\u003e#1317\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/7eb0bf2ce0c11bd12acb98111d72af7641ecdc33\"\u003e\u003ccode\u003e7eb0bf2\u003c/code\u003e\u003c/a\u003e chore: RC v4.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/71c41796f4cdf2aebcb5e49d1bf6896f4ad72a2a\"\u003e\u003ccode\u003e71c4179\u003c/code\u003e\u003c/a\u003e fix: Update axe-core to v4.11.3 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dequelabs/axe-core-npm/compare/v4.11.1...v4.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.58.2 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/postcss` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/postcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/postcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/12eb5ae7b6026ff64c04f889b2221418d772da72\"\u003e\u003ccode\u003e12eb5ae\u003c/code\u003e\u003c/a\u003e Cleanup noisy test output (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4255671c5f792c42808ecd6b2dec27c16e3c559e\"\u003e\u003ccode\u003e4255671\u003c/code\u003e\u003c/a\u003e Improve snapshot tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52f94c74bb491e9c3641ce322a0ef90fb3c45de6\"\u003e\u003ccode\u003e52f94c7\u003c/code\u003e\u003c/a\u003e Improve codebase quality (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19999\"\u003e#19999\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/bfb5732b0b948d89c6803cb537bca168ec8e0a46\"\u003e\u003ccode\u003ebfb5732\u003c/code\u003e\u003c/a\u003e Fall back to the plugin \u003ccode\u003ebase\u003c/code\u003e when PostCSS has no \u003ccode\u003efrom\u003c/code\u003e option (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/3a890c35727fe0630c59b72dbec799d02e3c4800\"\u003e\u003ccode\u003e3a890c3\u003c/code\u003e\u003c/a\u003e Bump dependencies (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-postcss\"\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 \u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e since your current version.\u003c/p\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 `eslint-config-next` from 16.1.6 to 16.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/next.js/releases\"\u003eeslint-config-next's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.2.6\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release contains security fixes and backported bug fixes. It does \u003cstrong\u003enot\u003c/strong\u003e include all pending features/changes on canary.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eSecurity Fixes\u003c/h3\u003e\n\u003cp\u003eThe following advisories have been addressed:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eHigh:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-8h8q-6873-q5fj\"\u003eGHSA-8h8q-6873-q5fj: Denial of Service with Server Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-267c-6grr-h53f\"\u003eGHSA-267c-6grr-h53f: Middleware / Proxy bypass in App Router applications via segment-prefetch routes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-26hh-7cqf-hhc6\"\u003eGHSA-26hh-7cqf-hhc6: Middleware / Proxy bypass in App Router applications via segment-prefetch routes - \u003cstrong\u003eIncomplete Fix Follow-Up\u003c/strong\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-mg66-mrh9-m8jx\"\u003eGHSA-mg66-mrh9-m8jx: Denial of Service via connection exhaustion in applications using Cache Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-492v-c6pp-mqqv\"\u003eGHSA-492v-c6pp-mqqv: Middleware / Proxy bypass through dynamic route parameter injection\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-c4j6-fc7j-m34r\"\u003eGHSA-c4j6-fc7j-m34r: Server-side request forgery in applications using WebSocket upgrades\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-36qx-fr4f-26g5\"\u003eGHSA-36qx-fr4f-26g5: Middleware / Proxy bypass in Pages Router applications using i18n\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eModerate:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-ffhc-5mcf-pf4q\"\u003eGHSA-ffhc-5mcf-pf4q: Cross-site scripting in App Router applications using CSP nonces\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-gx5p-jg67-6x7h\"\u003eGHSA-gx5p-jg67-6x7h: Cross-site scripting in beforeInteractive scripts with untrusted input\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-h64f-5h5j-jqjh\"\u003eGHSA-h64f-5h5j-jqjh: Denial of Service in the Image Optimization API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-wfc6-r584-vfw7\"\u003eGHSA-wfc6-r584-vfw7: Cache poisoning in React Server Component responses\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eLow:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-vfv6-92ff-j949\"\u003eGHSA-vfv6-92ff-j949: Cache poisoning via collisions in React Server Component cache-busting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-3g8h-86w9-wvmq\"\u003eGHSA-3g8h-86w9-wvmq: Middleware / Proxy redirects can be cache-poisoned\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: preserve HTTP access fallbacks during prerender recovery (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/92231\"\u003e#92231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix fallback route params case in app-page handler (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/91737\"\u003e#91737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix invalid HTML response for route-level RSC requests in deployment adapter (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/91541\"\u003e#91541\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePatch setHeader for direct route handlers (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93101\"\u003e#93101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude deployment id in \u003ccode\u003ecacheHandlers\u003c/code\u003e keys (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93453\"\u003e#93453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix double-encoding of URL pathname parts in client param parsing (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93491\"\u003e#93491\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev16.2.5\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release contains security fixes and backported bug fixes. It does \u003cstrong\u003enot\u003c/strong\u003e include all pending features/changes on canary.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eSecurity Fixes\u003c/h3\u003e\n\u003cp\u003eThe following advisories have been addressed:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eHigh:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-8h8q-6873-q5fj\"\u003eGHSA-8h8q-6873-q5fj: Denial of Service with Server Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-267c-6grr-h53f\"\u003eGHSA-267c-6grr-h53f: Middleware / Proxy bypass in App Router applications via segment-prefetch routes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-mg66-mrh9-m8jx\"\u003eGHSA-mg66-mrh9-m8jx: Denial of Service via connection exhaustion in applications using Cache Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-492v-c6pp-mqqv\"\u003eGHSA-492v-c6pp-mqqv: Middleware / Proxy bypass through dynamic route parameter injection\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-c4j6-fc7j-m34r\"\u003eGHSA-c4j6-fc7j-m34r: Server-side request forgery in applications using WebSocket upgrades\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/vercel/next.js/commit/ee6e79b1792a4d401ddf2480f40a83549fe8e722\"\u003e\u003ccode\u003eee6e79b\u003c/code\u003e\u003c/a\u003e v16.2.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/766148f9cd48c0e218acafcd0f15defc14871bf4\"\u003e\u003ccode\u003e766148f\u003c/code\u003e\u003c/a\u003e v16.2.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/2275bd8598c88e8652d1271e74bcf972f72f4f38\"\u003e\u003ccode\u003e2275bd8\u003c/code\u003e\u003c/a\u003e v16.2.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/d5f649b2f4affdad1009cb178c1e3b37f4f1ad3f\"\u003e\u003ccode\u003ed5f649b\u003c/code\u003e\u003c/a\u003e v16.2.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/52faae3d94641584e13691238df5be158d0f00fb\"\u003e\u003ccode\u003e52faae3\u003c/code\u003e\u003c/a\u003e v16.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/ed7d2cef246dcb3e2955c018fd8b2027e0ff8eed\"\u003e\u003ccode\u003eed7d2ce\u003c/code\u003e\u003c/a\u003e v16.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/c5c94dffbf084e66b172a9c6ff23d80c24973764\"\u003e\u003ccode\u003ec5c94df\u003c/code\u003e\u003c/a\u003e v16.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/3683192a6bea9011222e9b236f8000b5266f3fe6\"\u003e\u003ccode\u003e3683192\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.104\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/668981482a3f9de97c4c1371e940e0f84972c080\"\u003e\u003ccode\u003e6689814\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.103\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/ad66dbc89b356867c308110dc5365a696c763991\"\u003e\u003ccode\u003ead66dbc\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.102\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/next.js/commits/v16.2.6/packages/eslint-config-next\"\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-config-next since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-prettier` from 5.5.5 to 5.5.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/releases\"\u003eeslint-plugin-prettier's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.5.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/791\"\u003e#791\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/b5c96a30d3e292a379d6e8ac030c29fd7acbc90b\"\u003e\u003ccode\u003eb5c96a3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e! - chore: bump all (dev)Dependencies\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/prettier/eslint-plugin-prettier/blob/main/CHANGELOG.md\"\u003eeslint-plugin-prettier's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.5.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/791\"\u003e#791\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/b5c96a30d3e292a379d6e8ac030c29fd7acbc90b\"\u003e\u003ccode\u003eb5c96a3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e! - chore: bump all (dev)Dependencies\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/prettier/eslint-plugin-prettier/commit/4f33ea5a503c6cdbda93424ebd13188a46a1a890\"\u003e\u003ccode\u003e4f33ea5\u003c/code\u003e\u003c/a\u003e chore: release eslint-plugin-prettier (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/792\"\u003e#792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/4745b54882a9011704764070a28aaaf0504efc92\"\u003e\u003ccode\u003e4745b54\u003c/code\u003e\u003c/a\u003e ci: declare workflow-level contents: read on 2 workflows (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/790\"\u003e#790\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/b5c96a30d3e292a379d6e8ac030c29fd7acbc90b\"\u003e\u003ccode\u003eb5c96a3\u003c/code\u003e\u003c/a\u003e chore: bump all (dev)Dependencies (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/791\"\u003e#791\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/e867680b2c1cf3748322c8c802690e7cfb78e233\"\u003e\u003ccode\u003ee867680\u003c/code\u003e\u003c/a\u003e chore(deps): update all dependencies (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/766\"\u003e#766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/e8e2f7f1dcad747f1d43168ee09956b512956593\"\u003e\u003ccode\u003ee8e2f7f\u003c/code\u003e\u003c/a\u003e chore: testing eslint v10 (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/779\"\u003e#779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/ca076d95aaf69aaf9c95abcc1692f8269197f248\"\u003e\u003ccode\u003eca076d9\u003c/code\u003e\u003c/a\u003e chore: update dev dependencies (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/780\"\u003e#780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/42e636951f8d53d169b1f8c2b7e7dfd792711113\"\u003e\u003ccode\u003e42e6369\u003c/code\u003e\u003c/a\u003e build(deps): Bump the actions group with 2 updates (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/778\"\u003e#778\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/53ff2143c03609e75b60e0e33d56c8089f0b364f\"\u003e\u003ccode\u003e53ff214\u003c/code\u003e\u003c/a\u003e Remove empty NPM_TOKEN from release.yml\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.5...v5.5.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jest` from 30.3.0 to 30.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jestjs/jest/releases\"\u003ejest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev30.4.2\u003c/h2\u003e\n\u003ch1\u003eFixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix named imports from CJS modules whose \u003ccode\u003emodule.exports\u003c/code\u003e is a function with own-property exports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16150\"\u003e#16150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.1...v30.4.2\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.1...v30.4.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.0\u003c/h2\u003e\n\u003cp\u003eBig release! 😀\u003c/p\u003e\n\u003cp\u003eMain feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work \u003ccode\u003erequire(esm)\u003c/code\u003e module is now supported on Node 24.9+ (still requires \u003ccode\u003e--experimental-vm-modules\u003c/code\u003e like before).\u003c/p\u003e\n\u003cp\u003eIn addition we now support fake timers for the recently released \u003ccode\u003eTemporal\u003c/code\u003e API in Node v26.\u003c/p\u003e\n\u003cp\u003eReact 19 is also supported properly in \u003ccode\u003epretty-format\u003c/code\u003e, meaning snapshots of React components now work like they should.\u003c/p\u003e\n\u003cp\u003eDue to all the changes, there might be regressions that snuck in. Please report them!\u003c/p\u003e\n\u003cp\u003eFull list of changes below\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\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/jestjs/jest/blob/main/CHANGELOG.md\"\u003ejest's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e30.4.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix named imports from CJS modules whose \u003ccode\u003emodule.exports\u003c/code\u003e is a function with own-property exports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16150\"\u003e#16150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.1\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus]\u003c/code\u003e Prevent crash when \u003ccode\u003easyncError\u003c/code\u003e is undefined for non-Error throws (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16003\"\u003e#16003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-jasmine2]\u003c/code\u003e Include \u003ccode\u003eError.cause\u003c/code\u003e in JSON \u003ccode\u003efailureMessages\u003c/code\u003e output (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15967\"\u003e#15967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Fix preset path resolution on Windows when the preset uses subpath \u003ccode\u003eexports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15961\"\u003e#15961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config without a validation warning (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Project config validator now emits \u0026quot;is not supported in an individual project configuration\u0026quot; instead of \u0026quot;probably a typing mistake\u0026quot; for known global-only options (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-environment-node]\u003c/code\u003e Fix \u003ccode\u003e--localstorage-file\u003c/code\u003e warning on Node 25+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16086\"\u003e#16086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters]\u003c/code\u003e Apply global coverage threshold to unmatched pattern files in addition to glob/path thresholds (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16137\"\u003e#16137\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/jestjs/jest/commit/746f2a0f57c56e3bba555280f0587d40f3db95c0\"\u003e\u003ccode\u003e746f2a0\u003c/code\u003e\u003c/a\u003e v30.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/b3b4a09ed3005369dacc7466d1d2122797283785\"\u003e\u003ccode\u003eb3b4a09\u003c/code\u003e\u003c/a\u003e v30.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/5cbb21e0b3037edb42e503ec1a1ce80efad40c20\"\u003e\u003ccode\u003e5cbb21e\u003c/code\u003e\u003c/a\u003e v30.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/db7141a93cc85fab81cf9c25368e1f2b2c312286\"\u003e\u003ccode\u003edb7141a\u003c/code\u003e\u003c/a\u003e fix: allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config (\u003ca href=\"https://github.com/jestjs/jest/tree/HEAD/packages/jest/issues/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jestjs/jest/commits/v30.4.2/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jest-environment-jsdom` from 30.3.0 to 30.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jestjs/jest/releases\"\u003ejest-environment-jsdom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev30.4.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.0\u003c/h2\u003e\n\u003cp\u003eBig release! 😀\u003c/p\u003e\n\u003cp\u003eMain feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work \u003ccode\u003erequire(esm)\u003c/code\u003e module is now supported on Node 24.9+ (still requires \u003ccode\u003e--experimental-vm-modules\u003c/code\u003e like before).\u003c/p\u003e\n\u003cp\u003eIn addition we now support fake timers for the recently released \u003ccode\u003eTemporal\u003c/code\u003e API in Node v26.\u003c/p\u003e\n\u003cp\u003eReact 19 is also supported properly in \u003ccode\u003epretty-format\u003c/code\u003e, meaning snapshots of React components now work like they should.\u003c/p\u003e\n\u003cp\u003eDue to all the changes, there might be regressions that snuck in. Please report them!\u003c/p\u003e\n\u003cp\u003eFull list of changes below\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\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/jestjs/jest/blob/main/CHANGELOG.md\"\u003ejest-environment-jsdom's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e30.4.1\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeo...\n\n_Description has been truncated_","html_url":"https://github.com/FreeForCharity/FFC-EX-hclwellness.org/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/FreeForCharity%2FFFC-EX-hclwellness.org/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"},{"uuid":"4554220548","node_id":"PR_kwDOQxBvIc7g7ygQ","number":246,"state":"open","title":"chore(deps-dev): bump the npm-dev group with 13 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T11:19:26.000Z","updated_at":"2026-05-30T11:21:26.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"npm-dev","update_count":13,"packages":[{"name":"@typescript-eslint/eslint-plugin","old_version":"8.59.1","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.59.1","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@vitest/coverage-v8","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"globals","old_version":"17.5.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"turbo","old_version":"2.9.6","new_version":"2.9.16","repository_url":"https://github.com/vercel/turborepo"},{"name":"jsdom","old_version":"29.1.0","new_version":"29.1.1","repository_url":"https://github.com/jsdom/jsdom"},{"name":"vitest","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@types/node","old_version":"25.6.0","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"vite","old_version":"8.0.10","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vite-plugin-dts","old_version":"5.0.0","new_version":"5.0.1","repository_url":"https://github.com/qmhc/unplugin-dts"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"vite-plugin-pwa","old_version":"1.2.0","new_version":"1.3.0","repository_url":"https://github.com/vite-pwa/vite-plugin-pwa"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm-dev group with 13 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.59.1` | `8.60.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.59.1` | `8.60.0` |\n| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.1.5` | `4.1.7` |\n| [globals](https://github.com/sindresorhus/globals) | `17.5.0` | `17.6.0` |\n| [turbo](https://github.com/vercel/turborepo) | `2.9.6` | `2.9.16` |\n| [jsdom](https://github.com/jsdom/jsdom) | `29.1.0` | `29.1.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.5` | `4.1.7` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.6.0` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `6.0.1` | `6.0.2` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.10` | `8.0.14` |\n| [vite-plugin-dts](https://github.com/qmhc/unplugin-dts/tree/HEAD/packages/vite-plugin-dts) | `5.0.0` | `5.0.1` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [vite-plugin-pwa](https://github.com/vite-pwa/vite-plugin-pwa) | `1.2.0` | `1.3.0` |\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.59.1 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\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/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.59.1 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\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/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\u003eSee full diff 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 `@vitest/coverage-v8` from 4.1.5 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\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 `globals` from 17.5.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\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\u003eSee full diff in \u003ca href=\"https://github.com/sindresorhus/globals/compare/v17.5.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 `turbo` from 2.9.6 to 2.9.16\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/turborepo/releases\"\u003eturbo's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTurborepo v2.9.16\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eChangelog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erelease(turborepo): 2.9.15 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12955\"\u003evercel/turborepo#12955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Avoid hanging PTY shutdown by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12958\"\u003evercel/turborepo#12958\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Retry npm tlog publish failures by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12959\"\u003evercel/turborepo#12959\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.16-canary.1 by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12960\"\u003evercel/turborepo#12960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Preserve nested Bun dependency versions by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12963\"\u003evercel/turborepo#12963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRevert \u0026quot;fix: Preserve nested Bun dependency versions\u0026quot; by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12964\"\u003evercel/turborepo#12964\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.16-canary.2 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12961\"\u003evercel/turborepo#12961\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Preserve nested Bun dependency versions by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12965\"\u003evercel/turborepo#12965\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Don't delete existing \u003ccode\u003e.git\u003c/code\u003e when using \u003ccode\u003e--no-git\u003c/code\u003e flag by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12968\"\u003evercel/turborepo#12968\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vercel/turborepo/compare/v2.9.15...v2.9.16\"\u003ehttps://github.com/vercel/turborepo/compare/v2.9.15...v2.9.16\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTurborepo v2.9.16-canary.2\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eChangelog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erelease(turborepo): 2.9.15-canary.7 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12935\"\u003evercel/turborepo#12935\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Restore a few internal invariant checks by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12933\"\u003evercel/turborepo#12933\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Improve profile tracing coverage by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12936\"\u003evercel/turborepo#12936\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Use build-scale OTel duration buckets by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12939\"\u003evercel/turborepo#12939\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Preserve pnpm injected peer package entries by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12940\"\u003evercel/turborepo#12940\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: Add heap allocation profiling by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12943\"\u003evercel/turborepo#12943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.15-canary.8 by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12945\"\u003evercel/turborepo#12945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Correct attribute presence claims in turborepo-otel by \u003ca href=\"https://github.com/adityasingh2400\"\u003e\u003ccode\u003e@​adityasingh2400\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12932\"\u003evercel/turborepo#12932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(turbo-codemod): Remove duplicate \u0026quot;in\u0026quot; in transforms path comment by \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12948\"\u003evercel/turborepo#12948\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: Switch Geist font imports to npm geist package by \u003ca href=\"https://github.com/christopherkindl\"\u003e\u003ccode\u003e@​christopherkindl\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12952\"\u003evercel/turborepo#12952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Respect root gitignore during prune by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12953\"\u003evercel/turborepo#12953\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Harden OTEL endpoint validation by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12954\"\u003evercel/turborepo#12954\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.15 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12955\"\u003evercel/turborepo#12955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Avoid hanging PTY shutdown by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12958\"\u003evercel/turborepo#12958\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Retry npm tlog publish failures by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12959\"\u003evercel/turborepo#12959\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.16-canary.1 by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12960\"\u003evercel/turborepo#12960\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/adityasingh2400\"\u003e\u003ccode\u003e@​adityasingh2400\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12932\"\u003evercel/turborepo#12932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12948\"\u003evercel/turborepo#12948\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/christopherkindl\"\u003e\u003ccode\u003e@​christopherkindl\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12952\"\u003evercel/turborepo#12952\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vercel/turborepo/compare/v2.9.15-canary.7...v2.9.16-canary.2\"\u003ehttps://github.com/vercel/turborepo/compare/v2.9.15-canary.7...v2.9.16-canary.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTurborepo v2.9.15\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- 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/vercel/turborepo/commit/5e2d466c345604aa2011cd2314d176f401f650de\"\u003e\u003ccode\u003e5e2d466\u003c/code\u003e\u003c/a\u003e publish 2.9.16 to registry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/b4aa626ee2316a61d070bcce4038ff26474180ee\"\u003e\u003ccode\u003eb4aa626\u003c/code\u003e\u003c/a\u003e fix: Don't delete existing \u003ccode\u003e.git\u003c/code\u003e when using \u003ccode\u003e--no-git\u003c/code\u003e flag (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12968\"\u003e#12968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/7952b4627d04f1edd7ab9f2262a17c3e49cc1bc8\"\u003e\u003ccode\u003e7952b46\u003c/code\u003e\u003c/a\u003e fix: Preserve nested Bun dependency versions (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12965\"\u003e#12965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/5e5b248c188e679616c0d9e23bbe4ed8b46c9c36\"\u003e\u003ccode\u003e5e5b248\u003c/code\u003e\u003c/a\u003e release(turborepo): 2.9.16-canary.2 (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12961\"\u003e#12961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/3b1b6e9655ccafc73b80bca5f8cf815310cb2728\"\u003e\u003ccode\u003e3b1b6e9\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: Preserve nested Bun dependency versions\u0026quot; (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12964\"\u003e#12964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/8d4eaf81af296377e6c7533138b8f8c35b77bd7e\"\u003e\u003ccode\u003e8d4eaf8\u003c/code\u003e\u003c/a\u003e fix: Preserve nested Bun dependency versions (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12963\"\u003e#12963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/2284fa90a3492cd6800567ab2d4946dc5c853c91\"\u003e\u003ccode\u003e2284fa9\u003c/code\u003e\u003c/a\u003e release(turborepo): 2.9.16-canary.1 (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12960\"\u003e#12960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/5317f656c7d13c382eb97a6fac786ab8a807295a\"\u003e\u003ccode\u003e5317f65\u003c/code\u003e\u003c/a\u003e fix: Retry npm tlog publish failures (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12959\"\u003e#12959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/52e81bd93645e6d0b7fe44470cb93d4020c3dfd5\"\u003e\u003ccode\u003e52e81bd\u003c/code\u003e\u003c/a\u003e fix: Avoid hanging PTY shutdown (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12958\"\u003e#12958\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/c85d4104bdc18df051334210d29c49353c46facf\"\u003e\u003ccode\u003ec85d410\u003c/code\u003e\u003c/a\u003e release(turborepo): 2.9.15 (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12955\"\u003e#12955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/turborepo/compare/v2.9.6...v2.9.16\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jsdom` from 29.1.0 to 29.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jsdom/jsdom/releases\"\u003ejsdom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev29.1.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003e'border-radius'\u003c/code\u003e computed style serialization. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed computed style computation when using \u003ccode\u003e'background-origin'\u003c/code\u003e and \u003ccode\u003e'background-clip'\u003c/code\u003e CSS properties. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSignificantly optimized initial calls to \u003ccode\u003egetComputedStyle()\u003c/code\u003e, before the cache warms up. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\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/jsdom/jsdom/commit/9b9ea7e10b7842cd38c61458a38774cc3b60c24c\"\u003e\u003ccode\u003e9b9ea7e\u003c/code\u003e\u003c/a\u003e 29.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/07efb7821c992108ec6d4d5fa603f1666e704b1a\"\u003e\u003ccode\u003e07efb78\u003c/code\u003e\u003c/a\u003e Optimize computed style comparison\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/5f6632990297dddf82b1e0b369870ca27c11da90\"\u003e\u003ccode\u003e5f66329\u003c/code\u003e\u003c/a\u003e Fix background-origin/background-clip in background shorthand\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/ad8af77ecc76a572ccd139770df0f27c7c06217a\"\u003e\u003ccode\u003ead8af77\u003c/code\u003e\u003c/a\u003e Fix border shorthand handling\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jsdom/jsdom/compare/v29.1.0...v29.1.1\"\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.5 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee1830604d57f6a02bf28f8067cdffc06\"\u003e\u003ccode\u003e18af98c\u003c/code\u003e\u003c/a\u003e fix(browser): simplify orchestrator otel carrier (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10285\"\u003e#10285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607cc67c7bf52ead13a606321ffdb06a857\"\u003e\u003ccode\u003e3188260\u003c/code\u003e\u003c/a\u003e feat(browser): provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e (#...\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 `@types/node` from 25.6.0 to 25.9.1\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/node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@vitejs/plugin-react` from 6.0.1 to 6.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitejs/vite-plugin-react/releases\"\u003e@​vitejs/plugin-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eplugin-react@6.0.2\u003c/h2\u003e\n\u003ch3\u003eAllow all options in reactCompilerPreset (\u003ca href=\"https://redirect.github.com/vitejs/vite-plugin-react/pull/1189\"\u003e#1189\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003eThis is a type only change. Only \u003ccode\u003ecompilationMode\u003c/code\u003e and \u003ccode\u003etarget\u003c/code\u003e options were available for \u003ccode\u003ereactCompilerPreset\u003c/code\u003e.\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-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md\"\u003e@​vitejs/plugin-react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.2 (2026-05-14)\u003c/h2\u003e\n\u003ch3\u003eAllow all options in reactCompilerPreset (\u003ca href=\"https://redirect.github.com/vitejs/vite-plugin-react/pull/1189\"\u003e#1189\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003eThis is a type only change. Only \u003ccode\u003ecompilationMode\u003c/code\u003e and \u003ccode\u003etarget\u003c/code\u003e options were available for \u003ccode\u003ereactCompilerPreset\u003c/code\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/vitejs/vite-plugin-react/commit/6535b55e956b425e6650ffc2cc98fd23cca1d231\"\u003e\u003ccode\u003e6535b55\u003c/code\u003e\u003c/a\u003e release: plugin-react@6.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/bf0e43b756e3be81f8572d59727c218311f431ef\"\u003e\u003ccode\u003ebf0e43b\u003c/code\u003e\u003c/a\u003e feat(react): whitelist debugging-options (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1189\"\u003e#1189\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/3bd1f08ae0b82ee0e96feb2ff265e61c6fe74b54\"\u003e\u003ccode\u003e3bd1f08\u003c/code\u003e\u003c/a\u003e feat: use carets for rolldown versions (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1216\"\u003e#1216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/2b8df67323265d1ff5ddf47b2db9ab0b9de5c688\"\u003e\u003ccode\u003e2b8df67\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1218\"\u003e#1218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/8fa9619e1b1f51b079f4c1df6bcf076dcafc5aed\"\u003e\u003ccode\u003e8fa9619\u003c/code\u003e\u003c/a\u003e fix(deps): update react 19.2.6 (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1211\"\u003e#1211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/a4296ad2995a8d493528b8d5450a1209de2943cb\"\u003e\u003ccode\u003ea4296ad\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1209\"\u003e#1209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/323ccd72576be636b50baa7d9ce816cc94d5991e\"\u003e\u003ccode\u003e323ccd7\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1196\"\u003e#1196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/a7506e105df00cdadc58c0aecc4512d8cfdd9765\"\u003e\u003ccode\u003ea7506e1\u003c/code\u003e\u003c/a\u003e chore(deps): update vite 8.0.10 (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1198\"\u003e#1198\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/02cff2a0cf5c7e9792b1612baa380228f5e4d3c1\"\u003e\u003ccode\u003e02cff2a\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1184\"\u003e#1184\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/4b9c890cdb21078ac45a86873b24f7e8613b8526\"\u003e\u003ccode\u003e4b9c890\u003c/code\u003e\u003c/a\u003e fix(deps): update react 19.2.5 (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1181\"\u003e#1181\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vitejs/vite-plugin-react/commits/plugin-react@6.0.2/packages/plugin-react\"\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.10 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\u003ch2\u003ev8.0.13\u003c/h2\u003e\n\u003cp\u003ePlease refer to \u003ca href=\"https://github.com/vitejs/vite/blob/v8.0.13/packages/vite/CHANGELOG.md\"\u003eCHANGELOG.md\u003c/a\u003e for details.\u003c/p\u003e\n\u003ch2\u003ev8.0.12\u003c/h2\u003e\n\u003cp\u003ePlease refer to \u003ca href=\"https://github.com/vitejs/vite/blob/v8.0.12/packages/vite/CHANGELOG.md\"\u003eCHANGELOG.md\u003c/a\u003e for details.\u003c/p\u003e\n\u003ch2\u003ev8.0.11\u003c/h2\u003e\n\u003cp\u003ePlease refer to \u003ca href=\"https://github.com/vitejs/vite/blob/v8.0.11/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/0ae2844ab6d6d1ccf78a2975b8132769fc35b302\"\u003e0ae2844\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecss:\u003c/strong\u003e sass does not use main field (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22449\"\u003e#22449\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/ebf39a04329ddc6ba765e006a5d463680a952270\"\u003eebf39a0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://github.com/vitejs/vite/compare/v8.0.12...v8.0.13\"\u003e8.0.13\u003c/a\u003e (2026-05-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebundled-dev:\u003c/strong\u003e add lazy bundling support (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/21406\"\u003e#21406\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/4f0949f3f13e4b2b34d32bf7b2b4de5f26bea192\"\u003e4f0949f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eoptimizer:\u003c/strong\u003e improve the esbuild plugin converter to pass some properties of build result to \u003ccode\u003eonEnd\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22357\"\u003e#22357\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/47071ce53f21726cf39e999c4407c4828ecbe957\"\u003e47071ce\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate rolldown to 1.0.1 (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22444\"\u003e#22444\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/8c766a6c5ee014969c4e32f29cc265e8e2c96e18\"\u003e8c766a6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebuild:\u003c/strong\u003e copy public directory after building same environment with \u003ccode\u003ewrite=false\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22328\"\u003e#22328\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/158e8ae8efdf7075ab295727e36b5ff68da3243e\"\u003e158e8ae\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecss:\u003c/strong\u003e await sass/less/styl worker disposal on teardown (fix \u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22274\"\u003e#22274\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22275\"\u003e#22275\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/b7edcb7d0dd17ddfeef4ace78d610c099216dade\"\u003eb7edcb7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecss:\u003c/strong\u003e keep deprecated \u003ccode\u003ename\u003c/code\u003e/\u003ccode\u003eoriginalFileName\u003c/code\u003e in synthetic \u003ccode\u003eassetFileNames\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22439\"\u003e#22439\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/8e59c97a44d923c4c06f67287a793c9aa5a4ebaa\"\u003e8e59c97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emake \u003ccode\u003eisBundled\u003c/code\u003e per environment (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22257\"\u003e#22257\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/a5763266170f8606836da5c6f987b4b2fd6ddc55\"\u003ea576326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003essr:\u003c/strong\u003e avoid rewriting labels that collide with imports (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22451\"\u003e#22451\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/d9b18e0387a253628d3d834288e79c5f7e85d566\"\u003ed9b18e0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove irrelevant commits from changelog (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22430\"\u003e#22430\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/6ea383859aaf0ef8e673b458f164e84aeb6ff51d\"\u003e6ea3838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate changelog (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22413\"\u003e#22413\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/fcdc87cc6799857e2bab0f44f333a681694fff74\"\u003efcdc87c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://github.com/vitejs/vite/compare/v8.0.11...v8.0.12\"\u003e8.0.12\u003c/a\u003e (2026-05-11)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate rolldown to 1.0.0 (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22401\"\u003e#22401\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/cf0ff4154b26cffbf18541ade1a50818842731d3\"\u003ecf0ff41\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/vitejs/vite/commit/c917f1ef9d9c6ef131af96d89089d8ec680b18f2\"\u003e\u003ccode\u003ec917f1e\u003c/code\u003e\u003c/a\u003e release: v8.0.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/5d94d1bffdb2a15de9341194d89baec86ce1f693\"\u003e\u003ccode\u003e5d94d1b\u003c/code\u003e\u003c/a\u003e fix(html): handle trailing slash paths in transformIndexHtml (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22480\"\u003e#22480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/98b81632139d51820f82036e58d6fbbf122b77b3\"\u003e\u003ccode\u003e98b8163\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22471\"\u003e#22471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/96efc88570b6a6ddf1a910f106920cbac07b3cf0\"\u003e\u003ccode\u003e96efc88\u003c/code\u003e\u003c/a\u003e feat: update rolldown to 1.0.2 (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22484\"\u003e#22484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/ebf39a04329ddc6ba765e006a5d463680a952270\"\u003e\u003ccode\u003eebf39a0\u003c/code\u003e\u003c/a\u003e test(css): sass does not use main field (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22449\"\u003e#22449\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/0ae2844ab6d6d1ccf78a2975b8132769fc35b302\"\u003e\u003ccode\u003e0ae2844\u003c/code\u003e\u003c/a\u003e refactor(glob): do not rewrite import path for absolute base (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22310\"\u003e#22310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/7cb728eb629cc677661f1bc52a044ffc0b87fc7f\"\u003e\u003ccode\u003e7cb728e\u003c/code\u003e\u003c/a\u003e chore(deps): update rolldown-related dependencies (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22470\"\u003e#22470\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/b3132dacea9c6e0cf526cd9f0f09d850f577c262\"\u003e\u003ccode\u003eb3132da\u003c/code\u003e\u003c/a\u003e fix(optimizer): pass oxc jsx options to transformSync in dependency scan     ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/e8e9a34dcf2540139de558a10187630884d10217\"\u003e\u003ccode\u003ee8e9a34\u003c/code\u003e\u003c/a\u003e fix(dev): handle errors when sending messages to vite server (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22450\"\u003e#22450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/2c69495f250edf01132d4a20128de19dbe836086\"\u003e\u003ccode\u003e2c69495\u003c/code\u003e\u003c/a\u003e chore: remove irrelevant commits from changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vitejs/vite/commits/v8.0.14/packages/vite\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vite-plugin-dts` from 5.0.0 to 5.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qmhc/unplugin-dts/blob/main/packages/vite-plugin-dts/CHANGELOG.md\"\u003evite-plugin-dts's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/qmhc/unplugin-dts/compare/v1.0.0-beta.7...v5.0.1\"\u003e5.0.1\u003c/a\u003e (2026-05-19)\u003c/h2\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/qmhc/unplugin-dts/commit/b77a250a6fd7e59617a558972cb99c1b3e0dc9b1\"\u003e\u003ccode\u003eb77a250\u003c/code\u003e\u003c/a\u003e release(vite-plugin-dts): v5.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qmhc/unplugin-dts/commit/c1a18b22d60e25c95570ed9a556d499383a0f7bd\"\u003e\u003ccode\u003ec1a18b2\u003c/code\u003e\u003c/a\u003e docs: split README into docs and clean up legacy descriptions\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/qmhc/unplugin-dts/commits/vite-plugin-dts@5.0.1/packages/vite-plugin-dts\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vite-plugin-pwa` from 1.2.0 to 1.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/releases\"\u003evite-plugin-pwa's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.3.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd vite 8 peer dependency support  -  by \u003ca href=\"https://github.com/Hermione-Granger-1176\"\u003e\u003ccode\u003e@​Hermione-Granger-1176\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e \u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/276af62\"\u003e\u003c!-- raw HTML omitted --\u003e(276af)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient\u003c/strong\u003e: Add onNeedReload callback  -  by \u003ca href=\"https://github.com/tomrehnstrom\"\u003e\u003ccode\u003e@​tomrehnstrom\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/fb30890\"\u003e\u003c!-- raw HTML omitted --\u003e(fb308)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/compare/v1.2.0...v1.3.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/vite-pwa/vite-plugin-pwa/commit/05670fc15e1dc717c847c806e1d46794cdd4cddc\"\u003e\u003ccode\u003e05670fc\u003c/code\u003e\u003c/a\u003e chore: release v1.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/207f86ef29e515e205db6211070e51acb2d5b6e7\"\u003e\u003ccode\u003e207f86e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/vite-pwa/vite-plugin-pwa/issues/899\"\u003e#899\u003c/a\u003e from rj-au/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/67f5000eac97ffb5480d4c1b7b3cbc7b5e0d43d9\"\u003e\u003ccode\u003e67f5000\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/vite-pwa/vite-plugin-pwa/issues/929\"\u003e#929\u003c/a\u003e from vite-pwa/userquin/chore-bump-workbox-to-7.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/a9646914a9cb50f60dd69c6c3dfcb83abba4f86d\"\u003e\u003ccode\u003ea964691\u003c/code\u003e\u003c/a\u003e chore: update workbox to 7.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/2432f659b1262c1e214619b70f481967393da2ef\"\u003e\u003ccode\u003e2432f65\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/vite-pwa/vite-plugin-pwa/issues/924\"\u003e#924\u003c/a\u003e from Hermione-Granger-1176/feat/add-vite-8-peer-dep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/34768187ee2c120c6cb6040a408bbae8bd4ec238\"\u003e\u003ccode\u003e3476818\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/vite-pwa/vite-plugin-pwa/issues/914\"\u003e#914\u003c/a\u003e from tomrehnstrom/feat/on-need-reload\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/276af62eeecf8b5513b80a7021f39be981e5b670\"\u003e\u003ccode\u003e276af62\u003c/code\u003e\u003c/a\u003e feat: add vite 8 peer dependency support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/4e1621588676db62c0c0944d64a35485e257f023\"\u003e\u003ccode\u003e4e16215\u003c/code\u003e\u003c/a\u003e chore: use \u003ccode\u003e\u0026quot;moduleResolution\u0026quot;: \u0026quot;bundler\u0026quot;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vite-pwa/vite-plugin-pwa/issues/913\"\u003e#913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/fb30890423891165e2ee1a2f4bc2655842d1fc3c\"\u003e\u003ccode\u003efb30890\u003c/code\u003e\u003c/a\u003e feat(client): add onNeedReload callback\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/3fc4b278bb2bd99c19607984d0583085e34607c3\"\u003e\u003ccode\u003e3fc4b27\u003c/code\u003e\u003c/a\u003e JSDOC: registerType: fix grammar and description\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/compare/v1.2.0...v1.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/jukka-matti/variscout/pull/246","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jukka-matti%2Fvariscout/issues/246","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/246/packages"},{"uuid":"4553755243","node_id":"PR_kwDOSsC37M7g6bk3","number":13,"state":"open","title":"Bump @playwright/test from 1.50.1 to 1.60.0 in /js","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-30T07:46:42.000Z","updated_at":"2026-05-30T07:46:42.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@playwright/test","old_version":"1.50.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"}],"path":"/js","ecosystem":"npm"},"body":"Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.50.1 to 1.60.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.50.1...v1.60.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 \u003ccode\u003e@​playwright/test\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@playwright/test\u0026package-manager=npm_and_yarn\u0026previous-version=1.50.1\u0026new-version=1.60.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nYou can trigger a rebase of this PR by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/rmcode-benchmark/clean20260529-2327__keycloak__rmcode-dev__PR37038__20260530/pull/13","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/rmcode-benchmark%2Fclean20260529-2327__keycloak__rmcode-dev__PR37038__20260530/issues/13","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/13/packages"},{"uuid":"4553666825","node_id":"PR_kwDOSadfsc7g6J-i","number":24,"state":"open","title":"chore: bump the misc group across 1 directory with 41 updates","user":"dependabot[bot]","labels":["chore","size/XL"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T07:13:01.000Z","updated_at":"2026-05-30T07:13:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore: bump","group_name":"misc","update_count":41,"packages":[{"name":"@typescript/native-preview","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"knip","old_version":"6.11.0","new_version":"6.14.2","repository_url":"https://github.com/webpro-nl/knip"},{"name":"lefthook","old_version":"2.1.6","new_version":"2.1.8","repository_url":"https://github.com/evilmartians/lefthook"},{"name":"oxlint-tsgolint","old_version":"0.22.1","new_version":"0.23.0","repository_url":"https://github.com/oxc-project/tsgolint"},{"name":"turbo","old_version":"2.9.8","new_version":"2.9.14","repository_url":"https://github.com/vercel/turborepo"},{"name":"@typescript/native-preview-darwin-arm64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-darwin-x64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-linux-arm","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-linux-arm64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-linux-x64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-win32-arm64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-win32-x64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@ai-sdk/anthropic","old_version":"3.0.74","new_version":"3.0.79","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/devtools","old_version":"0.0.17","new_version":"0.0.18","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/google","old_version":"3.0.67","new_version":"3.0.79","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/google-vertex","old_version":"4.0.118","new_version":"4.0.137","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/mcp","old_version":"1.0.39","new_version":"1.0.43","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/openai","old_version":"3.0.58","new_version":"3.0.65","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/valibot","old_version":"2.0.27","new_version":"2.0.28","repository_url":"https://github.com/vercel/ai"},{"name":"@aws-sdk/client-sesv2","old_version":"3.1041.0","new_version":"3.1053.0","repository_url":"https://github.com/aws/aws-sdk-js-v3"},{"name":"@litko/yara-x","old_version":"0.5.1","new_version":"0.5.2","repository_url":"https://github.com/cawalch/node-yara-x"},{"name":"@opentelemetry/api-logs","old_version":"0.216.0","new_version":"0.218.0","repository_url":"https://github.com/open-telemetry/opentelemetry-js"},{"name":"@valibot/to-json-schema","old_version":"1.6.0","new_version":"1.7.0","repository_url":"https://github.com/open-circle/valibot"},{"name":"bullmq","old_version":"5.76.5","new_version":"5.77.3","repository_url":"https://github.com/taskforcesh/bullmq"},{"name":"docx","old_version":"9.6.1","new_version":"9.7.0","repository_url":"https://github.com/dolanmiu/docx"},{"name":"elysia-rate-limit","old_version":"4.6.1","new_version":"4.6.2","repository_url":"https://github.com/rayriffy/elysia-rate-limit"},{"name":"marked","old_version":"18.0.3","new_version":"18.0.4","repository_url":"https://github.com/markedjs/marked"},{"name":"nodemailer","old_version":"8.0.7","new_version":"8.0.8","repository_url":"https://github.com/nodemailer/nodemailer"},{"name":"@tauri-apps/cli","old_version":"2.11.0","new_version":"2.11.2","repository_url":"https://github.com/tauri-apps/tauri"},{"name":"@ai-sdk/react","old_version":"3.0.176","new_version":"3.0.193","repository_url":"https://github.com/vercel/ai"},{"name":"@pydantic/genai-prices","old_version":"0.0.56","new_version":"0.0.61","repository_url":"https://github.com/pydantic/genai-prices"},{"name":"@tanstack/react-query","old_version":"5.100.9","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-query-devtools","old_version":"5.100.9","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"immer","old_version":"11.1.4","new_version":"11.1.8","repository_url":"https://github.com/immerjs/immer"},{"name":"zustand","old_version":"5.0.12","new_version":"5.0.13","repository_url":"https://github.com/pmndrs/zustand"},{"name":"react-grab","old_version":"0.1.32","new_version":"0.1.37","repository_url":"https://github.com/aidenybai/react-grab"},{"name":"@stll/stdnum","old_version":"0.0.1","new_version":"1.0.0","repository_url":"https://github.com/stella/stdnum"},{"name":"prosemirror-model","old_version":"1.25.4","new_version":"1.25.7","repository_url":"https://github.com/prosemirror/prosemirror-model"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"tailwind-merge","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"}],"path":null,"ecosystem":"npm"},"body":"Bumps the misc group with 40 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@typescript/native-preview](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [knip](https://github.com/webpro-nl/knip/tree/HEAD/packages/knip) | `6.11.0` | `6.14.2` |\n| [lefthook](https://github.com/evilmartians/lefthook) | `2.1.6` | `2.1.8` |\n| [oxlint-tsgolint](https://github.com/oxc-project/tsgolint) | `0.22.1` | `0.23.0` |\n| [turbo](https://github.com/vercel/turborepo) | `2.9.8` | `2.9.14` |\n| [@typescript/native-preview-darwin-arm64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-darwin-x64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-linux-arm](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-linux-arm64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-linux-x64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-win32-arm64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-win32-x64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@ai-sdk/anthropic](https://github.com/vercel/ai/tree/HEAD/packages/anthropic) | `3.0.74` | `3.0.79` |\n| [@ai-sdk/devtools](https://github.com/vercel/ai/tree/HEAD/packages/devtools) | `0.0.17` | `0.0.18` |\n| [@ai-sdk/google](https://github.com/vercel/ai/tree/HEAD/packages/google) | `3.0.67` | `3.0.79` |\n| [@ai-sdk/google-vertex](https://github.com/vercel/ai/tree/HEAD/packages/google-vertex) | `4.0.118` | `4.0.137` |\n| [@ai-sdk/mcp](https://github.com/vercel/ai/tree/HEAD/packages/mcp) | `1.0.39` | `1.0.43` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.58` | `3.0.65` |\n| [@ai-sdk/valibot](https://github.com/vercel/ai/tree/HEAD/packages/valibot) | `2.0.27` | `2.0.28` |\n| [@aws-sdk/client-sesv2](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-sesv2) | `3.1041.0` | `3.1053.0` |\n| [@litko/yara-x](https://github.com/cawalch/node-yara-x) | `0.5.1` | `0.5.2` |\n| [@opentelemetry/api-logs](https://github.com/open-telemetry/opentelemetry-js) | `0.216.0` | `0.218.0` |\n| [@valibot/to-json-schema](https://github.com/open-circle/valibot) | `1.6.0` | `1.7.0` |\n| [bullmq](https://github.com/taskforcesh/bullmq) | `5.76.5` | `5.77.3` |\n| [docx](https://github.com/dolanmiu/docx) | `9.6.1` | `9.7.0` |\n| [elysia-rate-limit](https://github.com/rayriffy/elysia-rate-limit) | `4.6.1` | `4.6.2` |\n| [marked](https://github.com/markedjs/marked) | `18.0.3` | `18.0.4` |\n| [nodemailer](https://github.com/nodemailer/nodemailer) | `8.0.7` | `8.0.8` |\n| [@tauri-apps/cli](https://github.com/tauri-apps/tauri) | `2.11.0` | `2.11.2` |\n| [@ai-sdk/react](https://github.com/vercel/ai/tree/HEAD/packages/react) | `3.0.176` | `3.0.193` |\n| [@pydantic/genai-prices](https://github.com/pydantic/genai-prices) | `0.0.56` | `0.0.61` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.100.9` | `5.100.14` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.100.9` | `5.100.14` |\n| [immer](https://github.com/immerjs/immer) | `11.1.4` | `11.1.8` |\n| [zustand](https://github.com/pmndrs/zustand) | `5.0.12` | `5.0.13` |\n| [react-grab](https://github.com/aidenybai/react-grab) | `0.1.32` | `0.1.37` |\n| [@stll/stdnum](https://github.com/stella/stdnum) | `0.0.1` | `1.0.0` |\n| [prosemirror-model](https://github.com/prosemirror/prosemirror-model) | `1.25.4` | `1.25.7` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n\n\nUpdates `@typescript/native-preview` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `knip` from 6.11.0 to 6.14.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/webpro-nl/knip/releases\"\u003eknip's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 6.14.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix vscode-knip build: pin native oxc bindings to bundled JS version (1b45a4103312c9c059560ae2e1eac25d86b4e2ac)\u003c/li\u003e\n\u003cli\u003eRelease vscode-knip@2.1.5 (328892eb04e65b4702e1ef2303db3156b8f2e1a3)\u003c/li\u003e\n\u003cli\u003eFix Astro plugin to support both possible middleware entry points (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1749\"\u003e#1749\u003c/a\u003e) (33e0cc1a530a8cf5b6b05c8b3a3ca55f8fce8a75) - thanks \u003ca href=\"https://github.com/schmalz-dmi\"\u003e\u003ccode\u003e@​schmalz-dmi\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFix LICENSE link (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1760\"\u003e#1760\u003c/a\u003e) (829620f9077ddea086a610c279c7c1250dd66e11) - thanks \u003ca href=\"https://github.com/vortispy\"\u003e\u003ccode\u003e@​vortispy\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFix GraphQL Codegen script config dependencies (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1756\"\u003e#1756\u003c/a\u003e) (e841c6355e7eff240e74010bfd2be8bbb22ff2b6) - thanks \u003ca href=\"https://github.com/jakeleventhal\"\u003e\u003ccode\u003e@​jakeleventhal\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSet pnpm config via env vars, disable verify-deps in ecosystem tests (53c12248cc3e79fd79f3efde691d463fc795c40f)\u003c/li\u003e\n\u003cli\u003eUpdate slonik ecosystem snapshot (f18410b34c8554364a9f003660bebae5e826de57)\u003c/li\u003e\n\u003cli\u003eFix Serverless TypeScript plugin dependencies (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1757\"\u003e#1757\u003c/a\u003e) (ebde7f8f3e3004db7f51fb5d60a0bdc2452116ef) - thanks \u003ca href=\"https://github.com/jakeleventhal\"\u003e\u003ccode\u003e@​jakeleventhal\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFix extended tsconfig type dependency attribution (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1758\"\u003e#1758\u003c/a\u003e) (f600b09e562317a37844ed8cdf1b9b46e06c9405) - thanks \u003ca href=\"https://github.com/jakeleventhal\"\u003e\u003ccode\u003e@​jakeleventhal\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFix Bun binary dependency tracking (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1759\"\u003e#1759\u003c/a\u003e) (1b289239f35ff2912195b7e39a96c667c54c1fc5) - thanks \u003ca href=\"https://github.com/jakeleventhal\"\u003e\u003ccode\u003e@​jakeleventhal\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eDetect Babel plugins/presets in Vite plugin options (resolve \u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1761\"\u003e#1761\u003c/a\u003e) (2753d6910743a12a207fca81cb8325c00803963a)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 6.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDetect dynamic imports in Svelte compiler (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1747\"\u003e#1747\u003c/a\u003e) (e1c1b1705f96ed7d6ac537a7969cbd07d238246a) - thanks \u003ca href=\"https://github.com/jinhyuk9714\"\u003e\u003ccode\u003e@​jinhyuk9714\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eDetect dynamic import attributes; share import matcher with Astro-MDX (9dae64166bbc45be1abeb8d741127d109d48d351)\u003c/li\u003e\n\u003cli\u003eWork the docs (close \u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1746\"\u003e#1746\u003c/a\u003e) (919cba2f11d1979b854c7abaaca8992ee8b08e23)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 6.14.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eResolve imports satisfied via transitive peerDeps (d654ec74d)\u003c/li\u003e\n\u003cli\u003eDon't flag undeclared sibling workspace imports as unlisted (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1742\"\u003e#1742\u003c/a\u003e) (e7122a1ae)\u003c/li\u003e\n\u003cli\u003eUpdate github-actions reporter snapshots (2308b5a42)\u003c/li\u003e\n\u003cli\u003eCache syncGlob() results like defaultGlob() does (6c34287a5)\u003c/li\u003e\n\u003cli\u003eTrim redundant statSync calls in FileEntryCache (eee3b899b)\u003c/li\u003e\n\u003cli\u003eCache parsed .gitignore patterns across --cache runs (7ffdc2ff3)\u003c/li\u003e\n\u003cli\u003eTighten cache module callsites (64e507265)\u003c/li\u003e\n\u003cli\u003eExtract shared disk-cache helper used by glob and gitignore caches (0987421d9)\u003c/li\u003e\n\u003cli\u003eSimplify CacheConsultant: replace trampoline with default arrow methods (bebe750d3)\u003c/li\u003e\n\u003cli\u003ePin pnpm minimumReleaseAge and trustPolicy (77efb32e5)\u003c/li\u003e\n\u003cli\u003eEliminate rescanFrontier polling in walkAndAnalyze (38d91b6e3)\u003c/li\u003e\n\u003cli\u003eReduce findWorkspaceByFilePath per-call overhead (91494378f)\u003c/li\u003e\n\u003cli\u003eMemoize DependencyDeputy.getDependencies (a661a2142)\u003c/li\u003e\n\u003cli\u003eTighten module-graph map helpers (drop double-lookup + optional chains) (c11d62fb0)\u003c/li\u003e\n\u003cli\u003eAdd --duration flag for zero-overhead duration measurement (d4b59d89b)\u003c/li\u003e\n\u003cli\u003eCover analysis pipeline with --performance timerify (694dbf44d)\u003c/li\u003e\n\u003cli\u003eAlign --help text (6f12997b1)\u003c/li\u003e\n\u003cli\u003eAdd cli arg shorthands: -p, -s, -w, -D, -f, -F, -u (f21a58710)\u003c/li\u003e\n\u003cli\u003eFormat (8db5346e4)\u003c/li\u003e\n\u003cli\u003eThis one's okay (662ceaf46)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 6.13.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd jest.config.{cts,mts} (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1743\"\u003e#1743\u003c/a\u003e) (44738d678c9992799f5fe4909a01cc5ddd702aa2) - thanks \u003ca href=\"https://github.com/joshkel\"\u003e\u003ccode\u003e@​joshkel\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eUpdate ecosystem tests (74420a614dfa15b81906266279c31ae0bf4e21bd)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexport * as\u003c/code\u003e re-exported namespace case (5923af48fc33aa56c2f42f882aa185e66626453d)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.mts\u003c/code\u003e and \u003ccode\u003e.cts\u003c/code\u003e config files to some plugins (69d1e83123e56c2c441f320c81bae099ba1eb014)\u003c/li\u003e\n\u003cli\u003eDocusaurus: ignore \u003ccode\u003e@generated/*\u003c/code\u003e, handle local plugin paths (ce5f7672fced084bfb017410650b78d36133e1b0)\u003c/li\u003e\n\u003cli\u003eNx: expand \u003ccode\u003e{projectRoot}\u003c/code\u003e / \u003ccode\u003e{workspaceRoot}\u003c/code\u003e token variables (871531228b0cb67ff07fdb9d77316c4340ccaf33)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 6.13.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd mercurial (hg) to command constants (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1737\"\u003e#1737\u003c/a\u003e) (abb08b0958e08a12684deacf0ab62dc7ada38074) - thanks \u003ca href=\"https://github.com/unrevised6419\"\u003e\u003ccode\u003e@​unrevised6419\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/webpro-nl/knip/commit/e93ccaa4d8fd6df6b4e976d2b0472ba5f7d48830\"\u003e\u003ccode\u003ee93ccaa\u003c/code\u003e\u003c/a\u003e Release knip@6.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/2753d6910743a12a207fca81cb8325c00803963a\"\u003e\u003ccode\u003e2753d69\u003c/code\u003e\u003c/a\u003e Detect Babel plugins/presets in Vite plugin options (resolve \u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/1b289239f35ff2912195b7e39a96c667c54c1fc5\"\u003e\u003ccode\u003e1b28923\u003c/code\u003e\u003c/a\u003e Fix Bun binary dependency tracking (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1759\"\u003e#1759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/f600b09e562317a37844ed8cdf1b9b46e06c9405\"\u003e\u003ccode\u003ef600b09\u003c/code\u003e\u003c/a\u003e Fix extended tsconfig type dependency attribution (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1758\"\u003e#1758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/ebde7f8f3e3004db7f51fb5d60a0bdc2452116ef\"\u003e\u003ccode\u003eebde7f8\u003c/code\u003e\u003c/a\u003e Fix Serverless TypeScript plugin dependencies (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1757\"\u003e#1757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/e841c6355e7eff240e74010bfd2be8bbb22ff2b6\"\u003e\u003ccode\u003ee841c63\u003c/code\u003e\u003c/a\u003e Fix GraphQL Codegen script config dependencies (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1756\"\u003e#1756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/829620f9077ddea086a610c279c7c1250dd66e11\"\u003e\u003ccode\u003e829620f\u003c/code\u003e\u003c/a\u003e Fix LICENSE link (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/33e0cc1a530a8cf5b6b05c8b3a3ca55f8fce8a75\"\u003e\u003ccode\u003e33e0cc1\u003c/code\u003e\u003c/a\u003e Fix Astro plugin to support both possible middleware entry points (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1749\"\u003e#1749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/b99f1a5b187ba86f1780cf9f246fec9702bb461f\"\u003e\u003ccode\u003eb99f1a5\u003c/code\u003e\u003c/a\u003e Release knip@6.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/919cba2f11d1979b854c7abaaca8992ee8b08e23\"\u003e\u003ccode\u003e919cba2\u003c/code\u003e\u003c/a\u003e Work the docs (close \u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/webpro-nl/knip/commits/knip@6.14.2/packages/knip\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lefthook` from 2.1.6 to 2.1.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evilmartians/lefthook/releases\"\u003elefthook's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.1.8\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e488a5f99a5a496e5837f757f8ce3e6c6d1415792 fix: do not warn if local hooks path is equal to default hooks path (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1421\"\u003e#1421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.1.7\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ef415a9d3fce1d4f6af62622cf96c72e04ecf7bd3 chore: go mod tidy\u003c/li\u003e\n\u003cli\u003ecf4ab9ea4580f5aeb0d4b61d4dd169533e5bb0c9 fix: always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1416\"\u003e#1416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e4c0e000d6fe9f35f42efefb9263b0b4cb5dfbd49 fix: apply stage_fixed only if it is safe (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1418\"\u003e#1418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e76aa843ef5ceb6970f61cd2ff28d16dd2ec82272 fix: linter, sacrifice optimization for readability\u003c/li\u003e\n\u003cli\u003e9d53c36ed9a26d3bf66e341a9650a0ecac9b6a37 fix: separate fallback push branch from pathspecs (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1396\"\u003e#1396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e22c9f773cf93b59005bd244c5b00caab2947a755 fix: try to always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1417\"\u003e#1417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e37d83986d8e6d6bf6792f57e22e7cbb1a9e28064 fix: use contrast colors (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1420\"\u003e#1420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eeb1064d0b8c6248627960bea1abf6891db5a21b1 refactor: add new logger without a global state (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1385\"\u003e#1385\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/evilmartians/lefthook/blob/master/CHANGELOG.md\"\u003elefthook's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.1.8 (2026-05-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: do not warn if local hooks path is equal to default hooks path (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1421\"\u003e#1421\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.7 (2026-05-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use contrast colors (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1420\"\u003e#1420\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: apply stage_fixed only if it is safe (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1418\"\u003e#1418\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: try to always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1417\"\u003e#1417\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1416\"\u003e#1416\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: add new logger without a global state (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1385\"\u003e#1385\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: linter, sacrifice optimization for readability by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: separate fallback push branch from pathspecs (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1396\"\u003e#1396\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​lawrence3699\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/evilmartians/lefthook/commit/9e75b2138b4d31b156d3256c2b0617851377aaf2\"\u003e\u003ccode\u003e9e75b21\u003c/code\u003e\u003c/a\u003e 2.1.8: reduce warning for core.hooksPath if it matches the default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/488a5f99a5a496e5837f757f8ce3e6c6d1415792\"\u003e\u003ccode\u003e488a5f9\u003c/code\u003e\u003c/a\u003e fix: do not warn if local hooks path is equal to default hooks path (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1421\"\u003e#1421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/b5c8310e174489a3705dbbe240eea035058a9128\"\u003e\u003ccode\u003eb5c8310\u003c/code\u003e\u003c/a\u003e 2.1.7: restore unstaged changes when possible\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/37d83986d8e6d6bf6792f57e22e7cbb1a9e28064\"\u003e\u003ccode\u003e37d8398\u003c/code\u003e\u003c/a\u003e fix: use contrast colors (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1420\"\u003e#1420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/4c0e000d6fe9f35f42efefb9263b0b4cb5dfbd49\"\u003e\u003ccode\u003e4c0e000\u003c/code\u003e\u003c/a\u003e fix: apply stage_fixed only if it is safe (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1418\"\u003e#1418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/22c9f773cf93b59005bd244c5b00caab2947a755\"\u003e\u003ccode\u003e22c9f77\u003c/code\u003e\u003c/a\u003e fix: try to always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1417\"\u003e#1417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/cf4ab9ea4580f5aeb0d4b61d4dd169533e5bb0c9\"\u003e\u003ccode\u003ecf4ab9e\u003c/code\u003e\u003c/a\u003e fix: always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1416\"\u003e#1416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/f415a9d3fce1d4f6af62622cf96c72e04ecf7bd3\"\u003e\u003ccode\u003ef415a9d\u003c/code\u003e\u003c/a\u003e chore: go mod tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/eb1064d0b8c6248627960bea1abf6891db5a21b1\"\u003e\u003ccode\u003eeb1064d\u003c/code\u003e\u003c/a\u003e refactor: add new logger without a global state (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1385\"\u003e#1385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/76aa843ef5ceb6970f61cd2ff28d16dd2ec82272\"\u003e\u003ccode\u003e76aa843\u003c/code\u003e\u003c/a\u003e fix: linter, sacrifice optimization for readability\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/evilmartians/lefthook/compare/v2.1.6...v2.1.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `oxlint-tsgolint` from 0.22.1 to 0.23.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/oxc-project/tsgolint/releases\"\u003eoxlint-tsgolint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): update crate-ci/typos action to v1.45.2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/915\"\u003eoxc-project/tsgolint#915\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add skill for upgrading typescript-go by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/918\"\u003eoxc-project/tsgolint#918\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update pnpm to v10.33.2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/921\"\u003eoxc-project/tsgolint#921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: update typescript-go submodule by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/922\"\u003eoxc-project/tsgolint#922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: attach tsconfig path to diagnostics by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/923\"\u003eoxc-project/tsgolint#923\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(prefer-nullish-coalescing): parenthesize mixed logical fixes by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/924\"\u003eoxc-project/tsgolint#924\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests(return-await): cover non-async arrow functions by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/926\"\u003eoxc-project/tsgolint#926\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update github.com/go-json-experiment/json digest to b6187a3 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/927\"\u003eoxc-project/tsgolint#927\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update github actions by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/928\"\u003eoxc-project/tsgolint#928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update crate-ci/typos action to v1.46.0 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/929\"\u003eoxc-project/tsgolint#929\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update module github.com/dlclark/regexp2 to v2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/930\"\u003eoxc-project/tsgolint#930\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: update typescript-go submodule by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/931\"\u003eoxc-project/tsgolint#931\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update typescript-go digest to 48e2953 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/933\"\u003eoxc-project/tsgolint#933\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update typescript-go digest to 5eb880f by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/936\"\u003eoxc-project/tsgolint#936\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(no-misused-promises): handle empty JSX attributes by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/938\"\u003eoxc-project/tsgolint#938\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(no-unsafe-enum-comparison): flag string literal unions by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/937\"\u003eoxc-project/tsgolint#937\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update typescript-go digest to e1f8f97 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/939\"\u003eoxc-project/tsgolint#939\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update typescript-go digest to 092b34f by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/940\"\u003eoxc-project/tsgolint#940\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: configure typescript-go renovate schedule by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/941\"\u003eoxc-project/tsgolint#941\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update github actions by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/945\"\u003eoxc-project/tsgolint#945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency dprint-typescript to v0.96.0 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/947\"\u003eoxc-project/tsgolint#947\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update gomod by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/946\"\u003eoxc-project/tsgolint#946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update crate-ci/typos action to v1.46.1 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/948\"\u003eoxc-project/tsgolint#948\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(prefer-nullish-coalescing): emit suggestion over fix by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/951\"\u003eoxc-project/tsgolint#951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: update packageManager to pnpm 11.0.4 by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/953\"\u003eoxc-project/tsgolint#953\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: update typescript-go submodule by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/955\"\u003eoxc-project/tsgolint#955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(no-nullable-type-assertion-style): use suggestion instead of fix by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/956\"\u003eoxc-project/tsgolint#956\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update Go version requirement to 1.26 in CONTRIBUTING.md. by \u003ca href=\"https://github.com/connorshea\"\u003e\u003ccode\u003e@​connorshea\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/957\"\u003eoxc-project/tsgolint#957\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: allow safe promise intersection members by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/959\"\u003eoxc-project/tsgolint#959\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: switch security workflow to ubuntu-latest by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/962\"\u003eoxc-project/tsgolint#962\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency vitest to v4.1.6 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/963\"\u003eoxc-project/tsgolint#963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update module github.com/dlclark/regexp2/v2 to v2.0.3 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/964\"\u003eoxc-project/tsgolint#964\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency dprint-markdown to v0.22.0 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/965\"\u003eoxc-project/tsgolint#965\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update github actions by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/966\"\u003eoxc-project/tsgolint#966\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf(no-unnecessary-type-parameters): stop counting settled candidates by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/967\"\u003eoxc-project/tsgolint#967\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add \u003ccode\u003edprint\u003c/code\u003e to pnpm \u003ccode\u003eallowBuilds\u003c/code\u003e by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/968\"\u003eoxc-project/tsgolint#968\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/oxc-project/tsgolint/compare/v0.22.1...v0.23.0\"\u003ehttps://github.com/oxc-project/tsgolint/compare/v0.22.1...v0.23.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/oxc-project/tsgolint/commit/0e575fae8407227601f66c1d8d8927a535aea58b\"\u003e\u003ccode\u003e0e575fa\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003edprint\u003c/code\u003e to pnpm \u003ccode\u003eallowBuilds\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/968\"\u003e#968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/bb8886bef7ae76cf3280852228a05214c54f2a83\"\u003e\u003ccode\u003ebb8886b\u003c/code\u003e\u003c/a\u003e perf(no-unnecessary-type-parameters): stop counting settled candidates (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/967\"\u003e#967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/90be7b2609efd2bcae290b09e4835fe9ae52c63e\"\u003e\u003ccode\u003e90be7b2\u003c/code\u003e\u003c/a\u003e chore(deps): update github actions (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/966\"\u003e#966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/cdae358c525a9a93ab48af36b51ae2a6c740830d\"\u003e\u003ccode\u003ecdae358\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency dprint-markdown to v0.22.0 (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/965\"\u003e#965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/d356c9e3d66d0b4fbe1b7353fcf5b8f857d6ed80\"\u003e\u003ccode\u003ed356c9e\u003c/code\u003e\u003c/a\u003e chore(deps): update module github.com/dlclark/regexp2/v2 to v2.0.3 (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/964\"\u003e#964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/7cba6be4c0d972578d14e52c7a454a0a15961727\"\u003e\u003ccode\u003e7cba6be\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency vitest to v4.1.6 (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/963\"\u003e#963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/1dcd2a6f4138f4b9a273a231def838995ac589e5\"\u003e\u003ccode\u003e1dcd2a6\u003c/code\u003e\u003c/a\u003e ci: switch security workflow to ubuntu-latest (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/962\"\u003e#962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/b4f66246a62ea03d7cd664bf940d2f978c2068d5\"\u003e\u003ccode\u003eb4f6624\u003c/code\u003e\u003c/a\u003e fix: allow safe promise intersection members (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/959\"\u003e#959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/233eeb35db9d698db67c4d4247963047ceb30fb7\"\u003e\u003ccode\u003e233eeb3\u003c/code\u003e\u003c/a\u003e docs: Update Go version requirement to 1.26 in CONTRIBUTING.md. (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/957\"\u003e#957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/8bd37abc596e5dd0d54ec6625b6c2a77922b7ca4\"\u003e\u003ccode\u003e8bd37ab\u003c/code\u003e\u003c/a\u003e fix(no-nullable-type-assertion-style): use suggestion instead of fix (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/956\"\u003e#956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/oxc-project/tsgolint/compare/v0.22.1...v0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `turbo` from 2.9.8 to 2.9.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/turborepo/releases\"\u003eturbo's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTurborepo v2.9.14\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release contains important security fixes.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eHigh:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/security/advisories/GHSA-5xc8-49mv-x4mm\"\u003eGHSA-5xc8-49mv-x4mm: Turborepo VSCode Extension command injection\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLow:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/security/advisories/GHSA-hcf7-66rw-9f5r\"\u003eGHSA-hcf7-66rw-9f5r: Login callback CSRF/session fixation\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/security/advisories/GHSA-3qcw-2rhx-2726\"\u003eGHSA-3qcw-2rhx-2726: Unexpected local code execution during Yarn Berry detection\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eChangelog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erelease(turborepo): 2.9.12 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12774\"\u003evercel/turborepo#12774\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Restore docs mobile menu by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12782\"\u003evercel/turborepo#12782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Use \u003ccode\u003epull_request\u003c/code\u003e for PR title linting by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12787\"\u003evercel/turborepo#12787\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Scope GitHub Actions caches by branch by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12788\"\u003evercel/turborepo#12788\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest: Validate lockfiles without dependency downloads by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12789\"\u003evercel/turborepo#12789\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemoved unneeded import form hash creation script in docs by \u003ca href=\"https://github.com/dancrumb\"\u003e\u003ccode\u003e@​dancrumb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12799\"\u003evercel/turborepo#12799\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Validate auth callback state by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12802\"\u003evercel/turborepo#12802\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Harden VS Code extension command execution by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12800\"\u003evercel/turborepo#12800\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Avoid project-local Yarn during detection by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12801\"\u003evercel/turborepo#12801\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: Release 2.9.13 by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12803\"\u003evercel/turborepo#12803\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/dancrumb\"\u003e\u003ccode\u003e@​dancrumb\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12799\"\u003evercel/turborepo#12799\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vercel/turborepo/compare/v2.9.12...v2.9.14\"\u003ehttps://github.com/vercel/turborepo/compare/v2.9.12...v2.9.14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTurborepo v2.9.13-canary.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eChangelog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erelease(turborepo): 2.9.11-canary.7 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12768\"\u003evercel/turborepo#12768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Allow \u003ccode\u003e$TURBO_EXTENDS$\u003c/code\u003e in LSP diagnostics by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12770\"\u003evercel/turborepo#12770\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.11 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12771\"\u003evercel/turborepo#12771\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Allow transit nodes in LSP diagnostics by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12773\"\u003evercel/turborepo#12773\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.12 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12774\"\u003evercel/turborepo#12774\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Restore docs mobile menu by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12782\"\u003evercel/turborepo#12782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Use \u003ccode\u003epull_request\u003c/code\u003e for PR title linting by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12787\"\u003evercel/turborepo#12787\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Scope GitHub Actions caches by branch by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12788\"\u003evercel/turborepo#12788\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest: Validate lockfiles without dependency downloads by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12789\"\u003evercel/turborepo#12789\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemoved unneeded import form hash creation script in docs by \u003ca href=\"https://github.com/dancrumb\"\u003e\u003ccode\u003e@​dancrumb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12799\"\u003evercel/turborepo#12799\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Validate auth callback state by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12802\"\u003evercel/turborepo#12802\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Harden VS Code extension command execution by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12800\"\u003evercel/turborepo#12800\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Avoid project-local Yarn during detection by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12801\"\u003evercel/turborepo#12801\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/vercel/turborepo/commit/fc62fe0d9c347d1d24f0ed8946284856593ddb93\"\u003e\u003ccode\u003efc62fe0\u003c/code\u003e\u003c/a\u003e publish 2.9.14 to registry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/fb8c9aec0f9e83f95783659a5ce9c4478cf62cb9\"\u003e\u003ccode\u003efb8c9ae\u003c/code\u003e\u003c/a\u003e chore: Release 2.9.13 (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12803\"\u003e#12803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/e8e629da4e1fb75231089e91b19be9d327a3e649\"\u003e\u003ccode\u003ee8e629d\u003c/code\u003e\u003c/a\u003e fix: Avoid project-local Yarn during detection (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12801\"\u003e#12801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/91c90cbf12f524c5c29b713d6472dd5fcdecb309\"\u003e\u003ccode\u003e91c90cb\u003c/code\u003e\u003c/a\u003e fix: Harden VS Code extension command execution (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12800\"\u003e#12800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/84f450894e87da1eed864d51f6f637f26980d560\"\u003e\u003ccode\u003e84f4508\u003c/code\u003e\u003c/a\u003e fix: Validate auth callback state (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12802\"\u003e#12802\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/1779ad7901384f106236a6e196059e4929745514\"\u003e\u003ccode\u003e1779ad7\u003c/code\u003e\u003c/a\u003e Removed unneeded import form hash creation script in docs (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12799\"\u003e#12799\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/71f8c90a807ffb9b9876ea8a04f523f473bf5c8d\"\u003e\u003ccode\u003e71f8c90\u003c/code\u003e\u003c/a\u003e test: Validate lockfiles without dependency downloads (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12789\"\u003e#12789\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/5fcb96024d503127bb0ed760ebe159b7716c52b3\"\u003e\u003ccode\u003e5fcb960\u003c/code\u003e\u003c/a\u003e ci: Scope GitHub Actions caches by branch (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12788\"\u003e#12788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/4cf9fabc9a6f6c99fe4e2f2da9f35be631be062a\"\u003e\u003ccode\u003e4cf9fab\u003c/code\u003e\u003c/a\u003e ci: Use \u003ccode\u003epull_request\u003c/code\u003e for PR title linting (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12787\"\u003e#12787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/859c629bc401f239ac7980a132746ca90478e17c\"\u003e\u003ccode\u003e859c629\u003c/code\u003e\u003c/a\u003e fix: Restore docs mobile menu (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12782\"\u003e#12782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/turborepo/compare/v2.9.8...v2.9.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-darwin-arm64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-darwin-x64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-linux-arm` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-linux-arm64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-linux-x64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-win32-arm64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-win32-x64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/anthropic` from 3.0.74 to 3.0.79\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/anthropic@3.0.79/packages/anthropic/CHANGELOG.md\"\u003e@​ai-sdk/anthropic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.0.79\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ed61a788: Handle errors from anthropic websearch tool\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.78\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e6e28d25: fix(anthropic): propagate toModelOutput providerOption to anthropic tool results\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.77\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ed53314d: feat(anthropic): add the new advisor tool\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.76\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [f591416]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/provider-utils\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.0.27\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.75\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e3f06680: Remove stale \u003ccode\u003eeffort-2025-11-24\u003c/code\u003e beta header — the extended thinking effort parameter is GA and no longer requires the beta flag. Vertex AI's strict validator was actively rejecting requests with this header.\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/vercel/ai/commit/7ebba33ab965b5b26f93705719d76db45089bb3c\"\u003e\u003ccode\u003e7ebba33\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15557\"\u003e#15557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/d61a788b8faa54b630d5672e71ddd8aecd61f72c\"\u003e\u003ccode\u003ed61a788\u003c/code\u003e\u003c/a\u003e Backport: Handle errors in anthropic's web search tool (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15555\"\u003e#15555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/2e7664bff4294f2f5b21c30136ca24d12c4e9b5c\"\u003e\u003ccode\u003e2e7664b\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15315\"\u003e#15315\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/6e28d252ffc4032abcbe78a463807d0af90bbaa7\"\u003e\u003ccode\u003e6e28d25\u003c/code\u003e\u003c/a\u003e Backport: fix(anthropic): propagate toModelOutput providerOption to anthropic...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/d37fb1f2dad4d96605ffd2ac3d4b55e0bccdc482\"\u003e\u003ccode\u003ed37fb1f\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15202\"\u003e#15202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/d53314da429ff19453b926c010fedb23e95911d7\"\u003e\u003ccode\u003ed53314d\u003c/code\u003e\u003c/a\u003e Backport: feat(anthropic): add the new advisor tool (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15203\"\u003e#15203\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e3ccdb5987c07459ffd9be56088c5ac9d142fba2\"\u003e\u003ccode\u003ee3ccdb5\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15094\"\u003e#15094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/74a7a20afff8c87ce6f1e15a3b1745e22c1853ca\"\u003e\u003ccode\u003e74a7a20\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15012\"\u003e#15012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/3f06680fd76d26d9b4d0cb62780e016d6f749e6f\"\u003e\u003ccode\u003e3f06680\u003c/code\u003e\u003c/a\u003e Backport: fix(anthropic): remove stale effort-2025-11-24 beta header (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15011\"\u003e#15011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/anthropic@3.0.79/packages/anthropic\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/devtools` from 0.0.17 to 0.0.18\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/devtools@0.0.18/packages/devtools/CHANGELOG.md\"\u003e@​ai-sdk/devtools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.0.18\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e41aff6f: fix(devtools): add pointer cursor to DevTools buttons\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/vercel/ai/commit/c930c3df3fe94b7554881423d03a82f132963a94\"\u003e\u003ccode\u003ec930c3d\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/devtools/issues/15292\"\u003e#15292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/41aff6f50f616ef64344684691debe2675f9967f\"\u003e\u003ccode\u003e41aff6f\u003c/code\u003e\u003c/a\u003e Backport: fix(devtools): add pointer cursor to DevTools buttons (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/devtools/issues/15291\"\u003e#15291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/devtools@0.0.18/packages/devtools\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/google` from 3.0.67 to 3.0.79\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/google@3.0.79/packages/google/CHANGELOG.md\"\u003e@​ai-sdk/google's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.0.79\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecfa0cb2: feat(provider/google): support Google search grounding when using \u003ccode\u003egenerateImage\u003c/code\u003e with Gemini\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.78\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ecf63828: fix(google): read \u003ccode\u003eserviceTier\u003c/code\u003e from \u003ccode\u003eusageMetadata.serviceTier\u003c/code\u003e in both generate and stream paths\u003c/p\u003e\n\u003cp\u003eThe previous implementation read \u003ccode\u003eserviceTier\u003c/code\u003e from the \u003ccode\u003ex-gemini-service-tier\u003c/code\u003e\nresponse header, which is only populated on non-streaming responses. Gemini\nstreaming includes the value in \u003ccode\u003eusageMetadata.serviceTier\u003c/code\u003e on every chunk, so\n\u003ccode\u003eproviderMetadata.google.serviceTier\u003c/code\u003e was always \u003ccode\u003enull\u003c/code\u003e for streams. Read from\n\u003ccode\u003eusageMetadata\u003c/code\u003e for both paths instead.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.77\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e0f9f9bf: feat(google): read \u003ccode\u003eserviceTier\u003c/code\u003e from \u003ccode\u003ex-gemini-service-tier\u003c/code\u003e response header in Gemini API and use PayGo for Vertex\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.76\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ef259bd1: fix(google): fix streaming tool call args\u003c/li\u003e\n\u003cli\u003e756fec1: feat(provider/google): add \u003ccode\u003egemini-3.5-flash\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.75\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eab15576: feat(google): update Interactions API implementation to cater for upstream breaking changes coming May 26\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.74\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e3ca0daa: fix(provider/google): support \u003ccode\u003efunctionCall.id\u003c/code\u003e when returned by Gemini API and provide matching \u003ccode\u003efunctionResponse.id\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.73\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebb1eb98: feat(google): add \u003ccode\u003efileData\u003c/code\u003e support to embedding model\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.72\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/vercel/ai/commit/fc83fa3cd00a4dcf98032adcabea68eaa77e013c\"\u003e\u003ccode\u003efc83fa3\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15532\"\u003e#15532\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/cfa0cb26fb3dd0d0e6d2dd6132bc664f8f3906ab\"\u003e\u003ccode\u003ecfa0cb2\u003c/code\u003e\u003c/a\u003e Backport: feat(provider/google): support Google search grounding when using `...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/93ad540ed13863363ebc0bd5a9c574a082602d27\"\u003e\u003ccode\u003e93ad540\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15489\"\u003e#15489\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/cf63828cc3e598b8cad829f56322960167cba769\"\u003e\u003ccode\u003ecf63828\u003c/code\u003e\u003c/a\u003e Backport: fix(google): read serviceTier from usageMetadata in stream + genera...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/a15eda90f03049bfba99183b4fd308ca63372b86\"\u003e\u003ccode\u003ea15eda9\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15473\"\u003e#15473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/0f9f9bfc46d37d42c9a014437ff3e45d9fa46c55\"\u003e\u003ccode\u003e0f9f9bf\u003c/code\u003e\u003c/a\u003e Backport: fix(google): read serviceTier from x-gemini-service-tier response h...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/b9241afab7e9c703bfdb6ee9b0846f538c014a14\"\u003e\u003ccode\u003eb9241af\u003c/code\u003e\u003c/a\u003e Backport: feat(provider/google): add support for managed agents in the Intera...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e33b836af7673d45eb90704574ffae5bdc6ba824\"\u003e\u003ccode\u003ee33b836\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15440\"\u003e#15440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/f259bd1cef2c87f64105391e367b1bb5f884d6ea\"\u003e\u003ccode\u003ef259bd1\u003c/code\u003e\u003c/a\u003e Backport: fix(google): fix streaming tool call args (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15442\"\u003e#15442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/756fec1c679b0ad5568d5edff96cf3ac90d992e6\"\u003e\u003ccode\u003e756fec1\u003c/code\u003e\u003c/a\u003e Backport: feat(provider/google): add \u003ccode\u003egemini-3.5-flash\u003c/code\u003e (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15436\"\u003e#15436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/google@3.0.79/packages/google\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/google-vertex` from 4.0.118 to 4.0.137\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/google-vertex@4.0.137/packages/google-vertex/CHANGELOG.md\"\u003e@​ai-sdk/google-vertex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.137\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [e40e1d4]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/openai-compatible\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.0.48\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.136\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [d61a788]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/anthropic\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.0.79\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.135\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [cfa0cb2]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/google\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.0.79\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.134\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [cf63828]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/google\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.0.78\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.133\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [0f9f9bf]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/google\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.0.77\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.132\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e756fec1: feat(provider/google): add \u003ccode\u003egemini-3.5-flash\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [f259bd1]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [756fec1]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/google\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.0.76\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.131\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e00bd77f: fix(google-vertex): propagate project-id set in provider instance creation\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/vercel/ai/commit/0838d52fe657c4f04891b78423fbc636a543851a\"\u003e\u003ccode\u003e0838d52\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15565\"\u003e#15565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/7ebba33ab965b5b26f93705719d76db45089bb3c\"\u003e\u003ccode\u003e7ebba33\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15557\"\u003e#15557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/fc83fa3cd00a4dcf98032adcabea68eaa77e013c\"\u003e\u003ccode\u003efc83fa3\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15532\"\u003e#15532\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/93ad540ed13863363ebc0bd5a9c574a082602d27\"\u003e\u003ccode\u003e93ad540\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15489\"\u003e#15489\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/a15eda90f03049bfba99183b4fd308ca63372b86\"\u003e\u003ccode\u003ea15eda9\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15473\"\u003e#15473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e33b836af7673d45eb90704574ffae5bdc6ba824\"\u003e\u003ccode\u003ee33b836\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15440\"\u003e#15440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/756fec1c679b0ad5568d5edff96cf3ac90d992e6\"\u003e\u003ccode\u003e756fec1\u003c/code\u003e\u003c/a\u003e Backport: feat(provider/google): add \u003ccode\u003egemini-3.5-flash\u003c/code\u003e (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15436\"\u003e#15436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/f4fe7bcccec67a4fef6c4fc58213aa0aa22000b8\"\u003e\u003ccode\u003ef4fe7bc\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15415\"\u003e#15415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/00bd77f56923236cbd437c7fd22dece3b94042dd\"\u003e\u003ccode\u003e00bd77f\u003c/code\u003e\u003c/a\u003e Backport: fix(google-vertex): propagate project-id set in provider instance c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/f8d30032da41bdfd1d4c560bb6439dec8021603e\"\u003e\u003ccode\u003ef8d3003\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15356\"\u003e#15356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/google-vertex@4.0.137/packages/google-vertex\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/mcp` from 1.0.39 to 1.0.43\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/mcp@1.0.43/packages/mcp/CHANGELOG.md\"\u003e@​ai-sdk/mcp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.0.43\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ee2b923f: fix(mcp): deduplicate auth refresh on http transport\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.0.42\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e725f2ed: feat(mcp): expose server instructions to be accessible through client\u003c/li\u003e\n\u003cli\u003e7281592: fix(mcp): use negotiated protocol version in transport request headers\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.0.41\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ef591416: feat(ai): add toolMetadata for tool specific metdata\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [f591416]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/provider-utils\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.0.27\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.0.40\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e221a984: Add \u003ccode\u003eresource_link\u003c/code\u003e content type to \u003ccode\u003eCallToolResultSchema\u003c/code\u003e and \u003ccode\u003ePromptMessageSchema\u003c/code\u003e per MCP spec. Fixes hard rejection when MCP servers return \u003ccode\u003eresource_link\u003c/code\u003e content parts with zod ≥ 4.4.x.\u003c/li\u003e\n\u003cli\u003e0084974: feat(mcp): deprecate name and use clientName for MCPClient\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/vercel/ai/commit/0075589b2ac393a25fda6ed0131bf72a1be926b8\"\u003e\u003ccode\u003e0075589\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15529\"\u003e#15529\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e2b923f5cd81d57bc6f86022287b185eaefad16b\"\u003e\u003ccode\u003ee2b923f\u003c/code\u003e\u003c/a\u003e Backport: fix(mcp): deduplicate auth refresh on http transport (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15528\"\u003e#15528\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/5e287d0b11a59978c1ee87d74f308f4a88efef2c\"\u003e\u003ccode\u003e5e287d0\u003c/code\u003e\u003c/a\u003e Backport: chore: add readme for \u003ccode\u003e@​ai-sdk/mcp\u003c/code\u003e (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15450\"\u003e#15450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/8ccd4313866425d2677a766aeb741d7df8b7e344\"\u003e\u003ccode\u003e8ccd431\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15168\"\u003e#15168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/725f2edb4df1a55f05a32421b1b2a9792a69e7d2\"\u003e\u003ccode\u003e725f2ed\u003c/code\u003e\u003c/a\u003e Backport: feat(mcp): expose server instructions to be accessible through clie...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/728159283538ded36f254730b6b4c9a7043ffb17\"\u003e\u003ccode\u003e7281592\u003c/code\u003e\u003c/a\u003e Backport: fix(mcp): use negotiated protocol version in transport request head...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e3ccdb5987c07459ffd9be56088c5ac9d142fba2\"\u003e\u003ccode\u003ee3ccdb5\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15094\"\u003e#15094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/f591416195ac03f03d16c9f50e074586fa4c2088\"\u003e\u003ccode\u003ef591416\u003c/code\u003e\u003c/a\u003e Backport: feat(ai): add toolMetadata for tool specific metdata (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15053\"\u003e#15053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/74a7a20afff8c87ce6f1e15a3b1745e22c1853ca\"\u003e\u003ccode\u003e74a7a20\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15012\"\u003e#15012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/008497419e76fbcbe460829fbd785539a0b41ad0\"\u003e\u003ccode\u003e0084974\u003c/code\u003e\u003c/a\u003e Backport: feat(mcp): deprecate name and use clientName for MCPClient (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15003\"\u003e#15003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/mcp@1.0.43/packages/mcp\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/openai` from 3.0.58 to 3.0.65\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/openai@3.0.65/packages/openai/CHANGELOG.md\"\u003e@​ai-sdk/openai's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.0.65\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eeb52378: fix(openai): skip passing reasoning items when using previous response id\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.64\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eb7ed8bd: feat(openai): add opt-in pass-through for unsupported file media types\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.63\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [f591416]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/provider-utils\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.0.27\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.62\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e65edcca: feat: add allowedTools provider option for OpenAI Responses\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.61\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eb93f9b4: feat(provider/openai): forward imageDetail providerOptions on tool-result image content\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.60\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e6dcd8e6: feat(openai): add GPT-5.5 chat model IDs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.59\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e38966ab: fix(openai, openai-compatible): only send null content for assistant messages with tool calls\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/vercel/ai/commit/1a3ec6d76fcc5333ac9b2751f3938cbe918efef2\"\u003e\u003ccode\u003e1a3ec6d\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15513\"\u003e#15513\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/eb523789b342aa21742c0a06f531604782820aff\"\u003e\u003ccode\u003eeb52378\u003c/code\u003e\u003c/a\u003e Backport: fix(openai): skip passing reasoning items when using previous respo...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/2e7664bff4294f2f5b21c30136ca24d12c4e9b5c\"\u003e\u003ccode\u003e2e7664b\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15315\"\u003e#15315\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/b7ed8bdac18d2e71b4c392f08c8d8f03204ca8f4\"\u003e\u003ccode\u003eb7ed8bd\u003c/code\u003e\u003c/a\u003e Backport: feat(openai): add opt-in pass-through for unsupported file media ty...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e3ccdb5987c07459ffd9be56088c5ac9d142fba2\"\u003e\u003ccode\u003ee3ccdb5\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15094\"\u003e#15094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/bf9de314a7e747019d73dedad7c840da25cc94d5\"\u003e\u003ccode\u003ebf9de31\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15046\"\u003e#15046\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/65edcca7edb360ea6c3fa703ff5662c893e9ec0b\"\u003e\u003ccode\u003e65edcca\u003c/code\u003e\u003c/a\u003e Backport: feat(openai): add allowedTools provider option for Responses (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15044\"\u003e#15044\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/ee37690cc8bcf97710ba391dde4fdfca3c1e1405\"\u003e\u003ccode\u003eee37690\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15020\"\u003e#15020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/b93f9b4f806c59fce982c42d4dfa7d19f4a1f928\"\u003e\u003ccode\u003eb93f9b4\u003c/code\u003e\u003c/a\u003e Backport: feat(provider/openai): forward imageDetail providerOptions on tool-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/c7061114178e8bf86cc9ac604ebbbe0e7866c7eb\"\u003e\u003ccode\u003ec706111\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/14971\"\u003e#14971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/openai@3.0.65/packages/openai\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/valibot` from 2.0.27 to 2.0.28\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/valibot@2.0.28/packages/valibot/CHANGELOG.md\"\u003e@​ai-sdk/valibot's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.28\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [f591416]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/provider-utils\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.0.27\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/vercel/ai/commit/e3ccdb5987c07459ffd9be56088c5ac9d142fba2\"\u003e\u003ccode\u003ee3ccdb5\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/valibot/issues/15094\"\u003e#15094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/valibot@2.0.28/packages/valibot\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@aws-sdk/client-sesv2` from 3.1041.0 to 3.1053.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws/aws-sdk-js-v3/releases\"\u003e@​aws-sdk/client-sesv2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1053.0\u003c/h2\u003e\n\u003ch4\u003e3.1053.0(2026-05-22)\u003c/h4\u003e\n\u003ch5\u003eDocumentation Changes\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient-gameliftstreams:\u003c/strong\u003e  Added new Gen6 stream classes based on the EC2 G6e instance family. These classes are designed for streaming high-fidelity, graphically demanding games and applications that benefit from additional GPU memory and performance. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/bf88fa508bf74c7120202668d66b1657601e0d32\"\u003ebf88fa50\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003eNew Features\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclients:\u003c/strong\u003e  update client endpoints as of 2026-05-22 (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/3518814ad7011517e95ba077b4d60b64834dc0f5\"\u003e3518814a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-appconfig:\u003c/strong\u003e  Adding new BDD representation of endpoint ruleset (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/e757a91539c7e5633896a6165098a1802de3255c\"\u003ee757a915\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-repostspace:\u003c/strong\u003e  Adding new BDD representation of endpoint ruleset (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/15fec74b7b20e186a9eb70d593819dfa73b7f782\"\u003e15fec74b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-ivs-realtime:\u003c/strong\u003e  Adding new BDD representation of endpoint ruleset (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/adeea78b85eb00bed1a973b7344ecddbd89345f0\"\u003eadeea78b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-cloudcontrol:\u003c/strong\u003e  Adding new BDD representation of endpoint ruleset (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/2e7ef3bf7a1497a06a0ae1cbdfaa6bfa68b6ffe4\"\u003e2e7ef3bf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-tnb:\u003c/strong\u003e  Adding new BDD representation of endpoint ruleset (\u003ca href=\"https:/...\n\n_Description has been truncated_","html_url":"https://github.com/jon-aiken/stella/pull/24","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jon-aiken%2Fstella/issues/24","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/24/packages"},{"uuid":"4553500170","node_id":"PR_kwDOSpVeU87g5pkG","number":10,"state":"open","title":"chore(deps): bump the frontend-minor-and-patch group in /frontend with 5 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-30T06:05:21.000Z","updated_at":"2026-05-30T06:05:22.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"frontend-minor-and-patch","update_count":5,"packages":[{"name":"@tanstack/react-query","old_version":"5.62.0","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"next-themes","old_version":"0.3.0","new_version":"0.4.6","repository_url":"https://github.com/pacocoursey/next-themes"},{"name":"@playwright/test","old_version":"1.49.0","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tanstack/react-query-devtools","old_version":"5.62.0","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"openapi-typescript","old_version":"7.4.4","new_version":"7.13.0","repository_url":"https://github.com/openapi-ts/openapi-typescript"}],"path":"/frontend","ecosystem":"npm"},"body":"Bumps the frontend-minor-and-patch group in /frontend with 5 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.62.0` | `5.100.14` |\n| [next-themes](https://github.com/pacocoursey/next-themes) | `0.3.0` | `0.4.6` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.49.0` | `1.60.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.62.0` | `5.100.14` |\n| [openapi-typescript](https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript) | `7.4.4` | `7.13.0` |\n\nUpdates `@tanstack/react-query` from 5.62.0 to 5.100.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\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/TanStack/query/blob/main/packages/react-query/CHANGELOG.md\"\u003e@​tanstack/react-query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/fcee7bdc429385ae8ffa224fa8a7a9ec7b8ee380\"\u003e\u003ccode\u003efcee7bd\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.8\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/ba6e7beebd50143408f01fcf5d9aee2ec1486f60\"\u003e\u003ccode\u003eba6e7be\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10767\"\u003e#10767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e fix(react): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10\"\u003e#10\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/05cf2bc0a4eae64959dc8a40152e2878190c971b\"\u003e\u003ccode\u003e05cf2bc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10758\"\u003e#10758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e fix(query-core): use built-in NoInfer for generic indexed-access types (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10593\"\u003e#10593\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/5ff4f6936bb66a64267eb4413430f956eecf7248\"\u003e\u003ccode\u003e5ff4f69\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10755\"\u003e#10755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query@5.100.14/packages/react-query\"\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 \u003ccode\u003e@​tanstack/react-query\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `next-themes` from 0.3.0 to 0.4.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pacocoursey/next-themes/releases\"\u003enext-themes's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: add null check for value in updateDOM function to prevent runtime errors and flashing by \u003ca href=\"https://github.com/groveom\"\u003e\u003ccode\u003e@​groveom\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/344\"\u003epacocoursey/next-themes#344\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/groveom\"\u003e\u003ccode\u003e@​groveom\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/344\"\u003epacocoursey/next-themes#344\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.4.5...v0.4.6\"\u003ehttps://github.com/pacocoursey/next-themes/compare/v0.4.5...v0.4.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev0.4.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: map theme to class using ValueObject in injected script by \u003ca href=\"https://github.com/danielgavrilov\"\u003e\u003ccode\u003e@​danielgavrilov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/330\"\u003epacocoursey/next-themes#330\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce number of renders by pre-setting resolvedTheme by \u003ca href=\"https://github.com/wahba-openai\"\u003e\u003ccode\u003e@​wahba-openai\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/338\"\u003epacocoursey/next-themes#338\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump next from 14.2.10 to 14.2.15 in the npm_and_yarn group across 1 directory by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/331\"\u003epacocoursey/next-themes#331\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the npm_and_yarn group across 1 directory with 7 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/341\"\u003epacocoursey/next-themes#341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: Fix corepack errors in CI by \u003ca href=\"https://github.com/pacocoursey\"\u003e\u003ccode\u003e@​pacocoursey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/342\"\u003epacocoursey/next-themes#342\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/danielgavrilov\"\u003e\u003ccode\u003e@​danielgavrilov\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/330\"\u003epacocoursey/next-themes#330\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/wahba-openai\"\u003e\u003ccode\u003e@​wahba-openai\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/338\"\u003epacocoursey/next-themes#338\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.4.4...v0.4.5\"\u003ehttps://github.com/pacocoursey/next-themes/compare/v0.4.4...v0.4.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev0.4.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: infinite loop theme flicker by \u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/329\"\u003epacocoursey/next-themes#329\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/o1Suleyman\"\u003e\u003ccode\u003e@​o1Suleyman\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/328\"\u003epacocoursey/next-themes#328\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/329\"\u003epacocoursey/next-themes#329\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.4.3...v0.4.4\"\u003ehttps://github.com/pacocoursey/next-themes/compare/v0.4.3...v0.4.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev0.4.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePass \u003ccode\u003enonce\u003c/code\u003e to inline style tag when using \u003ccode\u003edisableTransitionOnChange\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.4.2...v0.4.3\"\u003ehttps://github.com/pacocoursey/next-themes/compare/v0.4.2...v0.4.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev0.4.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRe-export types from \u003ccode\u003enext-themes\u003c/code\u003e by \u003ca href=\"https://github.com/cschroeter\"\u003e\u003ccode\u003e@​cschroeter\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/321\"\u003epacocoursey/next-themes#321\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/cschroeter\"\u003e\u003ccode\u003e@​cschroeter\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/321\"\u003epacocoursey/next-themes#321\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.4.1...v0.4.2\"\u003ehttps://github.com/pacocoursey/next-themes/compare/v0.4.1...v0.4.2\u003c/a\u003e\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/pacocoursey/next-themes/commit/3a43743798db3008a0fc59e8bcc9d6e1bb5d4752\"\u003e\u003ccode\u003e3a43743\u003c/code\u003e\u003c/a\u003e v0.4.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/f5be1b290f6532c25745ca9213a1ccf5ded11bb5\"\u003e\u003ccode\u003ef5be1b2\u003c/code\u003e\u003c/a\u003e fix: add null check for value in updateDOM function to prevent runtime errors...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/c178917c6b07f3c9b079914817b31af377e53369\"\u003e\u003ccode\u003ec178917\u003c/code\u003e\u003c/a\u003e v0.4.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/d12996b4e8a14ceb7c3f998fe91917cdedd872fe\"\u003e\u003ccode\u003ed12996b\u003c/code\u003e\u003c/a\u003e chore: Fix corepack errors in CI (\u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/issues/342\"\u003e#342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/b77db23e9fe5352c317d9c685d9f07fd7928faa9\"\u003e\u003ccode\u003eb77db23\u003c/code\u003e\u003c/a\u003e Bump the npm_and_yarn group across 1 directory with 7 updates (\u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/issues/341\"\u003e#341\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/d3fa4ee9ad21861105e6250248e68cc4a288cd16\"\u003e\u003ccode\u003ed3fa4ee\u003c/code\u003e\u003c/a\u003e Bump next from 14.2.10 to 14.2.15 in the npm_and_yarn group across 1 director...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/ad83567b11f551ac3decb846411be01f813a57bf\"\u003e\u003ccode\u003ead83567\u003c/code\u003e\u003c/a\u003e Reduce number of renders by pre-setting resolvedTheme (\u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/issues/338\"\u003e#338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/1b510445a37e7c2cddb359b5f29fe8dce9fd4855\"\u003e\u003ccode\u003e1b51044\u003c/code\u003e\u003c/a\u003e fix: map theme to class using ValueObject in injected script (\u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/issues/330\"\u003e#330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/57c0561b1fac95fab0a951adf1bc74f21e24c91c\"\u003e\u003ccode\u003e57c0561\u003c/code\u003e\u003c/a\u003e v0.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/ae2ab9b47ac85d4b7b830bd74dbe241778e498d8\"\u003e\u003ccode\u003eae2ab9b\u003c/code\u003e\u003c/a\u003e fix: infinite loop theme flicker (\u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/issues/329\"\u003e#329\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.3.0...v0.4.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.49.0 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.49.0...v1.60.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 \u003ccode\u003e@​playwright/test\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-query-devtools` from 5.62.0 to 5.100.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query-devtools's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\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/TanStack/query/blob/main/packages/react-query-devtools/CHANGELOG.md\"\u003e@​tanstack/react-query-devtools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/4d130b992d2ac396d75f921bfc530dd3a9d50577\"\u003e\u003ccode\u003e4d130b9\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/3d21cacdec3028b700c4c2e3e0ff8dbe7a235e8c\"\u003e\u003ccode\u003e3d21cac\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\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/TanStack/query/commit/ba6e7beebd50143408f01fcf5d9aee2ec1486f60\"\u003e\u003ccode\u003eba6e7be\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10767\"\u003e#10767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/05cf2bc0a4eae64959dc8a40152e2878190c971b\"\u003e\u003ccode\u003e05cf2bc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10758\"\u003e#10758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/5ff4f6936bb66a64267eb4413430f956eecf7248\"\u003e\u003ccode\u003e5ff4f69\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10755\"\u003e#10755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/03eba38ae9f9367022316d802d827a8460edcab7\"\u003e\u003ccode\u003e03eba38\u003c/code\u003e\u003c/a\u003e test(react-query-devtools): add tests for missing 'QueryClient', context prov...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3ae42619e5713b2fd6916760e84f7c9ddaa7a317\"\u003e\u003ccode\u003e3ae4261\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10620\"\u003e#10620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query-devtools@5.100.14/packages/react-query-devtools\"\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 \u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openapi-typescript` from 7.4.4 to 7.13.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/releases\"\u003eopenapi-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eopenapi-typescript@7.13.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2549\"\u003e#2549\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/a690e526b7693479bc2f2f002d71a020fa5e4e16\"\u003e\u003ccode\u003ea690e52\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/abumalick\"\u003e\u003ccode\u003e@​abumalick\u003c/code\u003e\u003c/a\u003e! - Add readOnly/writeOnly support via \u003ccode\u003e--read-write-markers\u003c/code\u003e flag. When enabled, readOnly properties are wrapped with \u003ccode\u003e$Read\u0026lt;T\u0026gt;\u003c/code\u003e and writeOnly properties with \u003ccode\u003e$Write\u0026lt;T\u0026gt;\u003c/code\u003e. openapi-fetch uses \u003ccode\u003eReadable\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003eWritable\u0026lt;T\u0026gt;\u003c/code\u003e helpers to exclude these properties from responses and request bodies respectively.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.12.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2524\"\u003e#2524\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/697f7fe8bf3f23bfa36cb29c093a359b562a377e\"\u003e\u003ccode\u003e697f7fe\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gunnarvelle\"\u003e\u003ccode\u003e@​gunnarvelle\u003c/code\u003e\u003c/a\u003e! - Added flag to keep casing for exported root types\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2536\"\u003e#2536\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e3c05a40752b02fcabe63fda88d7e0afae00ab6d\"\u003e\u003ccode\u003ee3c05a4\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/darkbasic\"\u003e\u003ccode\u003e@​darkbasic\u003c/code\u003e\u003c/a\u003e! - Fix \u003ccode\u003eenumValues: true\u003c/code\u003e output for schemas that use \u003ccode\u003eoneOf\u003c/code\u003e/\u003ccode\u003eanyOf\u003c/code\u003e unions by narrowing union types with \u003ccode\u003eExtract\u0026lt;\u0026gt;\u003c/code\u003e before accessing variant-specific properties. This prevents invalid type paths when an accessed property only exists on some union members.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.10.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2480\"\u003e#2480\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e04dc65817a91eb7ceaea1992f0e674e5d885bb2\"\u003e\u003ccode\u003ee04dc65\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MatissJanis\"\u003e\u003ccode\u003e@​MatissJanis\u003c/code\u003e\u003c/a\u003e! - Fix multi-line jsdoc comments\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.10.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/openapi-ts/openapi-typescript/pull/2449\"\u003e#2449\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/bdd5ddb7d5f8463bd0515f0b2d5c98a8a394dabf\"\u003e\u003ccode\u003ebdd5ddb\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/kristianjf\"\u003e\u003ccode\u003e@​kristianjf\u003c/code\u003e\u003c/a\u003e! - Add transformProperty hook for property signature modification\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2288\"\u003e#2288\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/0f22be218f0c8050a96f35a6a271b959b2c5a23f\"\u003e\u003ccode\u003e0f22be2\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/hontas\"\u003e\u003ccode\u003e@​hontas\u003c/code\u003e\u003c/a\u003e! - Add support for patternProperties\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.9.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/openapi-ts/openapi-typescript/pull/2393\"\u003e#2393\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/6943ccf216f602f004eb178dd652ffcbafc05346\"\u003e\u003ccode\u003e6943ccf\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/simon-curtis\"\u003e\u003ccode\u003e@​simon-curtis\u003c/code\u003e\u003c/a\u003e! - Now checking for null \u0026amp; empty string when generating enum description\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2375\"\u003e#2375\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/5be22d7adc8bc36fdfa91f1aa3473919107060f2\"\u003e\u003ccode\u003e5be22d7\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ParkerVR\"\u003e\u003ccode\u003e@​ParkerVR\u003c/code\u003e\u003c/a\u003e! - Fix behavior when using enum and export-type flags\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.9.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2374\"\u003e#2374\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/c5ebbb8d5a0945c2360a2a147a3256d7e8585020\"\u003e\u003ccode\u003ec5ebbb8\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/cmlee-accelins\"\u003e\u003ccode\u003e@​cmlee-accelins\u003c/code\u003e\u003c/a\u003e! - Add JSDoc support for the recommended examples array on JSON Schema objects.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.8.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2310\"\u003e#2310\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e66b5ce63bfcdc57c6ee942e5ed4e7667e64c290\"\u003e\u003ccode\u003ee66b5ce\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/drwpow\"\u003e\u003ccode\u003e@​drwpow\u003c/code\u003e\u003c/a\u003e! - Build package with unbuild to improve CJS support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.7.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2185\"\u003e#2185\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/67889baf7832188f6589e0fb2e3d31a2e6ede257\"\u003e\u003ccode\u003e67889ba\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/duncanbeevers\"\u003e\u003ccode\u003e@​duncanbeevers\u003c/code\u003e\u003c/a\u003e! - Fix invalid $ref index into path\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.7.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\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/openapi-ts/openapi-typescript/blob/main/packages/openapi-typescript/CHANGELOG.md\"\u003eopenapi-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.13.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2549\"\u003e#2549\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/a690e526b7693479bc2f2f002d71a020fa5e4e16\"\u003e\u003ccode\u003ea690e52\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/abumalick\"\u003e\u003ccode\u003e@​abumalick\u003c/code\u003e\u003c/a\u003e! - Add readOnly/writeOnly support via \u003ccode\u003e--read-write-markers\u003c/code\u003e flag. When enabled, readOnly properties are wrapped with \u003ccode\u003e$Read\u0026lt;T\u0026gt;\u003c/code\u003e and writeOnly properties with \u003ccode\u003e$Write\u0026lt;T\u0026gt;\u003c/code\u003e. openapi-fetch uses \u003ccode\u003eReadable\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003eWritable\u0026lt;T\u0026gt;\u003c/code\u003e helpers to exclude these properties from responses and request bodies respectively.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.12.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2524\"\u003e#2524\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/697f7fe8bf3f23bfa36cb29c093a359b562a377e\"\u003e\u003ccode\u003e697f7fe\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gunnarvelle\"\u003e\u003ccode\u003e@​gunnarvelle\u003c/code\u003e\u003c/a\u003e! - Added flag to keep casing for exported root types\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2536\"\u003e#2536\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e3c05a40752b02fcabe63fda88d7e0afae00ab6d\"\u003e\u003ccode\u003ee3c05a4\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/darkbasic\"\u003e\u003ccode\u003e@​darkbasic\u003c/code\u003e\u003c/a\u003e! - Fix \u003ccode\u003eenumValues: true\u003c/code\u003e output for schemas that use \u003ccode\u003eoneOf\u003c/code\u003e/\u003ccode\u003eanyOf\u003c/code\u003e unions by narrowing union types with \u003ccode\u003eExtract\u0026lt;\u0026gt;\u003c/code\u003e before accessing variant-specific properties. This prevents invalid type paths when an accessed property only exists on some union members.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.11.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2433\"\u003e#2433\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/27c9370911b50a981d146fa5c561b90d66dd2c0d\"\u003e\u003ccode\u003e27c9370\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/danitt\"\u003e\u003ccode\u003e@​danitt\u003c/code\u003e\u003c/a\u003e! - Conditionally generate TS enums\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.10.2\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/openapi-ts/openapi-typescript/pull/2139\"\u003e#2139\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/12f9c29b7653db3ab5d6beb4ac698ce5b58177aa\"\u003e\u003ccode\u003e12f9c29\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/darkbasic\"\u003e\u003ccode\u003e@​darkbasic\u003c/code\u003e\u003c/a\u003e! - All kinds of enum related fixes (enums in arrays, in optional props, in unions, in request body, with record types...)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2548\"\u003e#2548\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/438559038baa931144768f186e8825f9e84cdb85\"\u003e\u003ccode\u003e4385590\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mynnx\"\u003e\u003ccode\u003e@​mynnx\u003c/code\u003e\u003c/a\u003e! - Fixes the \u003ccode\u003e--redocly\u003c/code\u003e flag so that it no longer hangs and is able to lookup the Redocly file at a custom path\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.10.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2480\"\u003e#2480\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e04dc65817a91eb7ceaea1992f0e674e5d885bb2\"\u003e\u003ccode\u003ee04dc65\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MatissJanis\"\u003e\u003ccode\u003e@​MatissJanis\u003c/code\u003e\u003c/a\u003e! - Fix multi-line jsdoc comments\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.10.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/openapi-ts/openapi-typescript/pull/2449\"\u003e#2449\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/bdd5ddb7d5f8463bd0515f0b2d5c98a8a394dabf\"\u003e\u003ccode\u003ebdd5ddb\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/kristianjf\"\u003e\u003ccode\u003e@​kristianjf\u003c/code\u003e\u003c/a\u003e! - Add transformProperty hook for property signature modification\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2288\"\u003e#2288\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/0f22be218f0c8050a96f35a6a271b959b2c5a23f\"\u003e\u003ccode\u003e0f22be2\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/hontas\"\u003e\u003ccode\u003e@​hontas\u003c/code\u003e\u003c/a\u003e! - Add support for patternProperties\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.9.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2393\"\u003e#2393\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/6943ccf216f602f004eb178dd652ffcbafc05346\"\u003e\u003ccode\u003e6943ccf\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/simon-curtis\"\u003e\u003ccode\u003e@​simon-curtis\u003c/code\u003e\u003c/a\u003e! - Now checking for null \u0026amp; empty string when generating enum description\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/openapi-ts/openapi-typescript/commit/5709d33a5977c4908b9e331f01cd0f9e181b1c37\"\u003e\u003ccode\u003e5709d33\u003c/code\u003e\u003c/a\u003e [ci] release (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2611\"\u003e#2611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/a690e526b7693479bc2f2f002d71a020fa5e4e16\"\u003e\u003ccode\u003ea690e52\u003c/code\u003e\u003c/a\u003e feat(openapi-typescript): add readOnly/writeOnly support via markers (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2549\"\u003e#2549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/79a443bebbd63cb4e07a9cc5dda7cc90dd181e3b\"\u003e\u003ccode\u003e79a443b\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency vite-node to v5 (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2602\"\u003e#2602\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/5ca83697f3e307d76edbd42e192f2bfad956012a\"\u003e\u003ccode\u003e5ca8369\u003c/code\u003e\u003c/a\u003e [ci] release (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2603\"\u003e#2603\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/47ba213c9092bf67a5c67be70ef2bf01e521c012\"\u003e\u003ccode\u003e47ba213\u003c/code\u003e\u003c/a\u003e ci: fix npm publish permissions (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2601\"\u003e#2601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/697f7fe8bf3f23bfa36cb29c093a359b562a377e\"\u003e\u003ccode\u003e697f7fe\u003c/code\u003e\u003c/a\u003e Keep casing for schema types exported to root (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2524\"\u003e#2524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e3c05a40752b02fcabe63fda88d7e0afae00ab6d\"\u003e\u003ccode\u003ee3c05a4\u003c/code\u003e\u003c/a\u003e fix(openapi-typescript): enumValues generates valid TypeScript for oneOf/anyO...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/746c35f3c88464ac0ff3a6c8d8036f62374bc635\"\u003e\u003ccode\u003e746c35f\u003c/code\u003e\u003c/a\u003e [ci] release (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2598\"\u003e#2598\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/27c9370911b50a981d146fa5c561b90d66dd2c0d\"\u003e\u003ccode\u003e27c9370\u003c/code\u003e\u003c/a\u003e support conditional ts enums (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2433\"\u003e#2433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/7635787ecb752dbfb1336bab08e1d56e1bb18ad9\"\u003e\u003ccode\u003e7635787\u003c/code\u003e\u003c/a\u003e [ci] release (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2504\"\u003e#2504\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commits/openapi-typescript@7.13.0/packages/openapi-typescript\"\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 openapi-typescript since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/Shamseer1988/Employee-Housing-Control-Portal/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Shamseer1988%2FEmployee-Housing-Control-Portal/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"},{"uuid":"4553131846","node_id":"PR_kwDOSr7V_s7g4dXw","number":6,"state":"open","title":"Bump @playwright/test from 1.58.2 to 1.60.0","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-30T04:02:37.000Z","updated_at":"2026-05-30T04:02:37.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.58.2 to 1.60.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@playwright/test\u0026package-manager=npm_and_yarn\u0026previous-version=1.58.2\u0026new-version=1.60.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/ednmendoza/saas-cost-dashboard/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ednmendoza%2Fsaas-cost-dashboard/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"},{"uuid":"4552457195","node_id":"PR_kwDOR_X7Ws7g2R6o","number":73,"state":"open","title":"chore(deps): bump the minor-and-patch group across 1 directory with 23 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T00:25:11.000Z","updated_at":"2026-05-30T00:26:04.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"minor-and-patch","update_count":23,"packages":[{"name":"@biomejs/biome","old_version":"2.4.13","new_version":"2.4.16","repository_url":"https://github.com/biomejs/biome"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"compound-agent","old_version":"2.7.2","new_version":"2.8.0","repository_url":"https://github.com/Nathandela/compound-agent"},{"name":"dependency-cruiser","old_version":"17.3.10","new_version":"17.4.3","repository_url":"https://github.com/sverweij/dependency-cruiser"},{"name":"@base-ui/react","old_version":"1.4.1","new_version":"1.5.0","repository_url":"https://github.com/mui/base-ui"},{"name":"@tanstack/react-query","old_version":"5.100.7","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-virtual","old_version":"3.13.24","new_version":"3.13.26","repository_url":"https://github.com/TanStack/virtual"},{"name":"date-fns","old_version":"4.1.0","new_version":"4.4.0","repository_url":"https://github.com/date-fns/date-fns"},{"name":"lucide-react","old_version":"1.14.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react","old_version":"19.2.5","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":"react-dom","old_version":"19.2.5","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-router","old_version":"7.14.2","new_version":"7.16.0","repository_url":"https://github.com/remix-run/react-router"},{"name":"tailwind-merge","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/vite","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"tailwindcss","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"vite","old_version":"8.0.10","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitest","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"mysql2","old_version":"3.22.3","new_version":"3.22.4","repository_url":"https://github.com/sidorares/node-mysql2"},{"name":"tsx","old_version":"4.21.0","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"},{"name":"zod","old_version":"4.4.1","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@astrojs/starlight","old_version":"0.38.4","new_version":"0.39.2","repository_url":"https://github.com/withastro/starlight"},{"name":"astro","old_version":"6.2.1","new_version":"6.4.2","repository_url":"https://github.com/withastro/astro"}],"path":null,"ecosystem":"npm"},"body":"Bumps the minor-and-patch group with 23 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.13` | `2.4.16` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [compound-agent](https://github.com/Nathandela/compound-agent) | `2.7.2` | `2.8.0` |\n| [dependency-cruiser](https://github.com/sverweij/dependency-cruiser) | `17.3.10` | `17.4.3` |\n| [@base-ui/react](https://github.com/mui/base-ui/tree/HEAD/packages/react) | `1.4.1` | `1.5.0` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.100.7` | `5.100.14` |\n| [@tanstack/react-virtual](https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual) | `3.13.24` | `3.13.26` |\n| [date-fns](https://github.com/date-fns/date-fns) | `4.1.0` | `4.4.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.14.0` | `1.17.0` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.5` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.5` | `19.2.6` |\n| [react-router](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router) | `7.14.2` | `7.16.0` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.4` | `4.3.0` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.4` | `4.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.10` | `8.0.14` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.5` | `4.1.7` |\n| [mysql2](https://github.com/sidorares/node-mysql2) | `3.22.3` | `3.22.4` |\n| [tsx](https://github.com/privatenumber/tsx) | `4.21.0` | `4.22.3` |\n| [zod](https://github.com/colinhacks/zod) | `4.4.1` | `4.4.3` |\n| [@astrojs/starlight](https://github.com/withastro/starlight/tree/HEAD/packages/starlight) | `0.38.4` | `0.39.2` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `6.2.1` | `6.4.2` |\n\n\nUpdates `@biomejs/biome` from 2.4.13 to 2.4.16\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.16\u003c/h2\u003e\n\u003ch2\u003e2.4.16\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/10329\"\u003e#10329\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ef764d51b9f5be18ec5a4f9b4dce732512e5d805\"\u003e\u003ccode\u003eef764d5\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed an issue where diagnostics showed an incorrect location in Astro files.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10363\"\u003e#10363\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/50aa4157599a1ac5c77c13bce81f5c87240beff0\"\u003e\u003ccode\u003e50aa415\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed HTML formatting for a case where comments could cause the formatter to split up a closing tag, which would cause the resulting HTML to be syntactically invalid.\u003c/p\u003e\n\u003cp\u003eInput:\u003c/p\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;span\n  \u0026gt;\u0026lt;!-- 1\n--\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 2\n--\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 3\n--\u0026gt;\u0026lt;/span\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOutput:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e  \u0026lt;span\n\t  \u0026gt;\u0026lt;!-- 1\n- --\u0026gt; \u0026lt;span\u0026gt;a\u0026lt;/span\u0026lt;!-- 2\n- --\u0026gt; \u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n+ --\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\u0026gt;\u0026lt;!-- 2\n+ --\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n  --\u0026gt;\u0026lt;/span\n  \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/10465\"\u003e#10465\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/0c718da81770f47d65845bc1a006f99512d9359b\"\u003e\u003ccode\u003e0c718da\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dfedoryshchev\"\u003e\u003ccode\u003e@​dfedoryshchev\u003c/code\u003e\u003c/a\u003e! - Fixed diagnostics emitted by the \u003ccode\u003enoUntrustedLicenses\u003c/code\u003e rule.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10358\"\u003e#10358\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/05c26176573534a0abfa92d454d244f9569bc77d\"\u003e\u003ccode\u003e05c2617\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10356\"\u003e#10356\u003c/a\u003e: \u003ccode\u003ebiome rage --linter\u003c/code\u003e now displays rules enabled through linter domains in the enabled rules list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10300\"\u003e#10300\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/950247c389e693c16b47d61d8ef0f1b85d1a1b02\"\u003e\u003ccode\u003e950247c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10265\"\u003e#10265\u003c/a\u003e: Svelte function bindings such as \u003ccode\u003ebind:value={get, set}\u003c/code\u003e are now parsed more precisely, so \u003ca href=\"https://biomejs.dev/linter/rules/no-comma-operator/\"\u003e\u003ccode\u003enoCommaOperator\u003c/code\u003e\u003c/a\u003e won't emit false positives for that syntax anymore.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9786\"\u003e#9786\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MeGaNeKoS\"\u003e\u003ccode\u003e@​MeGaNeKoS\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/8480\"\u003e#8480\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/use-destructuring/\"\u003e\u003ccode\u003euseDestructuring\u003c/code\u003e\u003c/a\u003e now provides \u003ccode\u003evariableDeclarator\u003c/code\u003e and \u003ccode\u003eassignmentExpression\u003c/code\u003e options to control which contexts enforce destructuring, matching ESLint's \u003ccode\u003eprefer-destructuring\u003c/code\u003e configuration. Both default to \u003ccode\u003e{array: true, object: true}\u003c/code\u003e. The diagnostic for object destructuring in assignment expressions now instructs users to wrap the assignment in parentheses.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10425\"\u003e#10425\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1948b7242e092ed0cfcf501ef6f119202b8ea93b\"\u003e\u003ccode\u003e1948b72\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/sjh9714\"\u003e\u003ccode\u003e@​sjh9714\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10244\"\u003e#10244\u003c/a\u003e: The \u003ccode\u003euseOptionalChain\u003c/code\u003e rule now detects negated guard inequality chains like \u003ccode\u003e!foo || foo.bar !== \u0026quot;x\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10442\"\u003e#10442\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/001f94f696d9baca3c231d39895a01d4dd528d52\"\u003e\u003ccode\u003e001f94f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ematipico\"\u003e\u003ccode\u003e@​ematipico\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10411\"\u003e#10411\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/no-misused-promises/\"\u003e\u003ccode\u003enoMisusedPromises\u003c/code\u003e\u003c/a\u003e no longer causes a stack overflow when a nested function returns an object with shorthand properties that shadow destructured variables from an outer scope.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10318\"\u003e#10318\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added support for \u003ccode\u003eformatter.trailingCommas\u003c/code\u003e in overrides. This option was previously available in the top-level formatter configuration but missing from formatter overrides.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10319\"\u003e#10319\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/2e3770923f9fb4e33606113e726014f7b63730d0\"\u003e\u003ccode\u003e2e37709\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed Vue and Svelte formatting for standalone interpolations in inline elements. Biome now preserves existing newlines in cases like:\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/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.16\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/10329\"\u003e#10329\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ef764d51b9f5be18ec5a4f9b4dce732512e5d805\"\u003e\u003ccode\u003eef764d5\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed an issue where diagnostics showed an incorrect location in Astro files.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10363\"\u003e#10363\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/50aa4157599a1ac5c77c13bce81f5c87240beff0\"\u003e\u003ccode\u003e50aa415\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed HTML formatting for a case where comments could cause the formatter to split up a closing tag, which would cause the resulting HTML to be syntactically invalid.\u003c/p\u003e\n\u003cp\u003eInput:\u003c/p\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;span\n  \u0026gt;\u0026lt;!-- 1\n--\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 2\n--\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 3\n--\u0026gt;\u0026lt;/span\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOutput:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e  \u0026lt;span\n\t  \u0026gt;\u0026lt;!-- 1\n- --\u0026gt; \u0026lt;span\u0026gt;a\u0026lt;/span\u0026lt;!-- 2\n- --\u0026gt; \u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n+ --\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\u0026gt;\u0026lt;!-- 2\n+ --\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n  --\u0026gt;\u0026lt;/span\n  \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/10465\"\u003e#10465\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/0c718da81770f47d65845bc1a006f99512d9359b\"\u003e\u003ccode\u003e0c718da\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dfedoryshchev\"\u003e\u003ccode\u003e@​dfedoryshchev\u003c/code\u003e\u003c/a\u003e! - Fixed diagnostics emitted by the \u003ccode\u003enoUntrustedLicenses\u003c/code\u003e rule.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10358\"\u003e#10358\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/05c26176573534a0abfa92d454d244f9569bc77d\"\u003e\u003ccode\u003e05c2617\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10356\"\u003e#10356\u003c/a\u003e: \u003ccode\u003ebiome rage --linter\u003c/code\u003e now displays rules enabled through linter domains in the enabled rules list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10300\"\u003e#10300\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/950247c389e693c16b47d61d8ef0f1b85d1a1b02\"\u003e\u003ccode\u003e950247c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10265\"\u003e#10265\u003c/a\u003e: Svelte function bindings such as \u003ccode\u003ebind:value={get, set}\u003c/code\u003e are now parsed more precisely, so \u003ca href=\"https://biomejs.dev/linter/rules/no-comma-operator/\"\u003e\u003ccode\u003enoCommaOperator\u003c/code\u003e\u003c/a\u003e won't emit false positives for that syntax anymore.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9786\"\u003e#9786\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MeGaNeKoS\"\u003e\u003ccode\u003e@​MeGaNeKoS\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/8480\"\u003e#8480\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/use-destructuring/\"\u003e\u003ccode\u003euseDestructuring\u003c/code\u003e\u003c/a\u003e now provides \u003ccode\u003evariableDeclarator\u003c/code\u003e and \u003ccode\u003eassignmentExpression\u003c/code\u003e options to control which contexts enforce destructuring, matching ESLint's \u003ccode\u003eprefer-destructuring\u003c/code\u003e configuration. Both default to \u003ccode\u003e{array: true, object: true}\u003c/code\u003e. The diagnostic for object destructuring in assignment expressions now instructs users to wrap the assignment in parentheses.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10425\"\u003e#10425\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1948b7242e092ed0cfcf501ef6f119202b8ea93b\"\u003e\u003ccode\u003e1948b72\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/sjh9714\"\u003e\u003ccode\u003e@​sjh9714\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10244\"\u003e#10244\u003c/a\u003e: The \u003ccode\u003euseOptionalChain\u003c/code\u003e rule now detects negated guard inequality chains like \u003ccode\u003e!foo || foo.bar !== \u0026quot;x\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10442\"\u003e#10442\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/001f94f696d9baca3c231d39895a01d4dd528d52\"\u003e\u003ccode\u003e001f94f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ematipico\"\u003e\u003ccode\u003e@​ematipico\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10411\"\u003e#10411\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/no-misused-promises/\"\u003e\u003ccode\u003enoMisusedPromises\u003c/code\u003e\u003c/a\u003e no longer causes a stack overflow when a nested function returns an object with shorthand properties that shadow destructured variables from an outer scope.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10318\"\u003e#10318\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added support for \u003ccode\u003eformatter.trailingCommas\u003c/code\u003e in overrides. This option was previously available in the top-level formatter configuration but missing from formatter overrides.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10319\"\u003e#10319\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/2e3770923f9fb4e33606113e726014f7b63730d0\"\u003e\u003ccode\u003e2e37709\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed Vue and Svelte formatting for standalone interpolations in inline elements. Biome now preserves existing newlines in cases like:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e\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/5f4ea56b1dfb00d839af218e3c6484154073a7eb\"\u003e\u003ccode\u003e5f4ea56\u003c/code\u003e\u003c/a\u003e ci: release (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10326\"\u003e#10326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/de2a33ce8be86b696742f3adee35a66dc9fa943b\"\u003e\u003ccode\u003ede2a33c\u003c/code\u003e\u003c/a\u003e fix(core): regression in emitted types (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10478\"\u003e#10478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/d835303700f27f8f362a186a0dddc7995117daf9\"\u003e\u003ccode\u003ed835303\u003c/code\u003e\u003c/a\u003e docs: remove redundant default phrase in \u003ccode\u003euseConsistentObjectDefinitions\u003c/code\u003e rul...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/4f1aaf2f833d5963dd150836836be6bc68212d68\"\u003e\u003ccode\u003e4f1aaf2\u003c/code\u003e\u003c/a\u003e fix: incorrect build when using build or test (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10426\"\u003e#10426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/dc73b6baa55606ec7b6aa9229564b1c142116f2b\"\u003e\u003ccode\u003edc73b6b\u003c/code\u003e\u003c/a\u003e refactor: make plugins opt-in via feature gate (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10418\"\u003e#10418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e feat(useDestructuring): add options for assignment/declaration and improve di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e fix(config): support trailingCommas in overrides (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10318\"\u003e#10318\u003c/a\u003e)\u003c/li\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\u003eAdditional commits viewable in \u003ca href=\"https://github.com/biomejs/biome/commits/@biomejs/biome@2.4.16/packages/@biomejs/biome\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `compound-agent` from 2.7.2 to 2.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Nathandela/compound-agent/releases\"\u003ecompound-agent's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.8.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Nathandela/compound-agent/compare/v2.7.2...v2.8.0\"\u003ehttps://github.com/Nathandela/compound-agent/compare/v2.7.2...v2.8.0\u003c/a\u003e\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/Nathandela/compound-agent/blob/main/CHANGELOG.md\"\u003ecompound-agent's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[2.8.0] - 2026-05-17\u003c/h2\u003e\n\u003ch3\u003eUpgrading (action required for the default path)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eca loop\u003c/code\u003e / \u003ccode\u003eca polish\u003c/code\u003e now default to the \u003ccode\u003eclaude --bg\u003c/code\u003e backend. The bg\nbackend \u003cstrong\u003efails loud (exit 1) at startup\u003c/strong\u003e unless \u003cstrong\u003eboth\u003c/strong\u003e operator\nprerequisites are met: (1) the \u003ccode\u003e--dangerously-skip-permissions\u003c/code\u003e bypass\ndisclaimer is accepted on the machine, and (2) Claude's\n\u003ccode\u003eworktree.bgIsolation\u003c/code\u003e setting is \u003ccode\u003enone\u003c/code\u003e. If you cannot set these, pin the\nlegacy behavior with \u003ccode\u003e--backend p\u003c/code\u003e (or \u003ccode\u003eCA_BACKEND=p\u003c/code\u003e) — that path is\nbyte-for-byte unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDefault loop/polish/review backend is now \u003ccode\u003eclaude --bg\u003c/code\u003e (subscription-billed)\u003c/strong\u003e: \u003ccode\u003eca loop\u003c/code\u003e and \u003ccode\u003eca polish\u003c/code\u003e default to the bg backend (\u003ccode\u003eclaude --bg\u003c/code\u003e). The legacy \u003ccode\u003eclaude -p\u003c/code\u003e path remains fully supported via \u003ccode\u003e--backend p\u003c/code\u003e or \u003ccode\u003eCA_BACKEND=p\u003c/code\u003e. Precedence: explicit \u003ccode\u003e--backend\u003c/code\u003e flag \u0026gt; \u003ccode\u003eCA_BACKEND\u003c/code\u003e env \u0026gt; default (bg). The bg backend runs sessions as background jobs polled via \u003ccode\u003estate.json\u003c/code\u003e, auto-isolates each session into a git worktree (harvested before cleanup), and uses the existing \u003ccode\u003eEPIC_COMPLETE\u003c/code\u003e/\u003ccode\u003eHUMAN_REQUIRED:\u003c/code\u003e/\u003ccode\u003eEPIC_FAILED\u003c/code\u003e protocol unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003e--backend bg|p\u003c/code\u003e flag added to \u003ccode\u003eca loop\u003c/code\u003e and \u003ccode\u003eca polish\u003c/code\u003e\u003c/strong\u003e: Explicit backend selection. Default is \u003ccode\u003ebg\u003c/code\u003e. \u003ccode\u003e--backend p\u003c/code\u003e restores the legacy \u003ccode\u003eclaude -p\u003c/code\u003e streaming pipeline byte-for-byte.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBootstrap preflight added to bg-backend scripts\u003c/strong\u003e: Generated scripts with \u003ccode\u003e--backend bg\u003c/code\u003e (or default) now run a \u003ccode\u003ebootstrap_preflight\u003c/code\u003e step before the epic loop starts. It enforces two operator prerequisites and fails loud (exit 1, remediation) if either is missing: (1) the \u003ccode\u003e--dangerously-skip-permissions\u003c/code\u003e bypass disclaimer must be accepted on the machine; (2) Claude's \u003ccode\u003eworktree.bgIsolation\u003c/code\u003e setting must be \u003ccode\u003enone\u003c/code\u003e — otherwise \u003ccode\u003ebd\u003c/code\u003e (keyed to the main repo path) is unreachable from the worktree \u003ccode\u003eclaude --bg\u003c/code\u003e auto-isolates into, so epics never close and the polish architect's \u003ccode\u003ebd\u003c/code\u003e writes are lost. The \u003ccode\u003ebgIsolation\u003c/code\u003e check tries \u003ccode\u003eclaude config get worktree.bgIsolation\u003c/code\u003e first and falls back to the settings-JSON precedence (\u003ccode\u003e.claude/settings.local.json\u003c/code\u003e → project \u003ccode\u003e.claude/settings.json\u003c/code\u003e → \u003ccode\u003e~/.claude/settings.json\u003c/code\u003e); it errs toward failing loud when it cannot confirm \u003ccode\u003enone\u003c/code\u003e. Both checks are skipped entirely for \u003ccode\u003e--backend p\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ePolish architect runs synchronously regardless of backend\u003c/strong\u003e: the polish architect (which only runs \u003ccode\u003ebd create --type=epic\u003c/code\u003e / \u003ccode\u003ebd dep add\u003c/code\u003e and makes no code edits) always uses the synchronous \u003ccode\u003eagent_invoke\u003c/code\u003e path even under \u003ccode\u003eCA_BACKEND=bg\u003c/code\u003e, so its \u003ccode\u003ebd\u003c/code\u003e epic writes reach the main-tree Dolt instead of a discarded bg worktree. The reviewer fleet is unaffected and is still bg-dispatched.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWorktree harvest\u003c/strong\u003e: with the bg backend, each \u003ccode\u003eclaude --bg\u003c/code\u003e session auto-isolates into a git worktree (\u003ccode\u003eworktree-\u0026lt;name\u0026gt;\u003c/code\u003e branch). After terminal state, the loop merges the worktree into the working branch before \u003ccode\u003eclaude rm\u003c/code\u003e. \u003ccode\u003eclaude rm\u003c/code\u003e runs only when worktree safety is positively verified. On harvest failure (merge conflict, ambiguous worktrees, non-success marker) \u003cstrong\u003eor when the pre-dispatch worktree snapshot is missing\u003c/strong\u003e (worktree safety unverifiable), the worktree is retained, the epic is marked \u003ccode\u003eHUMAN_REQUIRED\u003c/code\u003e, and \u003ccode\u003eclaude rm\u003c/code\u003e is skipped to preserve work — a missing snapshot is treated as unverifiable, never as \u0026quot;safe to remove\u0026quot;.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eca watch\u003c/code\u003e bg data source\u003c/strong\u003e: \u003ccode\u003eca watch\u003c/code\u003e follows the \u003ccode\u003e.latest\u003c/code\u003e symlink updated by the harvest/collect step to a trace file in \u003ccode\u003e.compound-agent/agent_logs/\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ePolish inner-loop backend propagation\u003c/strong\u003e: the polish loop now propagates \u003ccode\u003eCA_BACKEND\u003c/code\u003e to the inner infinity loop via \u003ccode\u003eCA_BACKEND=\u0026quot;${CA_BACKEND:-bg}\u0026quot; bash \u0026quot;$inner_script\u0026quot;\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eImprove loop (\u003ccode\u003eca improve\u003c/code\u003e, \u003ccode\u003eca loop --improve\u003c/code\u003e, \u003ccode\u003eca watch --improve\u003c/code\u003e)\u003c/strong\u003e: Removed the improve loop command and all associated flags and shell-script plumbing. The feature is superseded; this removal is unrelated to the bg backend migration.\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/Nathandela/compound-agent/commit/2f312df18a6c3b9aa77218806eed9fbf7f3cf110\"\u003e\u003ccode\u003e2f312df\u003c/code\u003e\u003c/a\u003e test(bg): eliminate flake in bg-seam runtime tests under parallel load\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/e22d001667276867697b451aed47f278c30683c2\"\u003e\u003ccode\u003ee22d001\u003c/code\u003e\u003c/a\u003e release: prep v2.8.0 -- claude --bg default backend + 4 P1 review fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/72563940886860a0a3ae89b57b529d7c04b1f783\"\u003e\u003ccode\u003e7256394\u003c/code\u003e\u003c/a\u003e Merge feat/bg-backend-migration: claude -p -\u0026gt; claude --bg seam + 4 P1 review ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/52af7083d653e124227768d854230fb38c1f5d11\"\u003e\u003ccode\u003e52af708\u003c/code\u003e\u003c/a\u003e fix(bg): resolve 4 P1 defects from independent dual review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/0f8cf9446188711a35199ce94d79b11208047529\"\u003e\u003ccode\u003e0f8cf94\u003c/code\u003e\u003c/a\u003e compound(bg-migration): capture cycle lessons (epic learning_agent-3bkj)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/9f121ccb7b7d7b1ce79c846aacca45e4958b8a75\"\u003e\u003ccode\u003e9f121cc\u003c/code\u003e\u003c/a\u003e fix(loop): Phase-4 P1s — loop-seam agent_invoke bg) case + polish inner-loop ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/29102dc3611b5c4ebd7e5326b8b580a0bb6abf22\"\u003e\u003ccode\u003e29102dc\u003c/code\u003e\u003c/a\u003e feat(loop): cutover - --backend flag, default bg, bootstrap preflight, docs (T6)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/6c5b3616a8393e837d47bcadb0f704d60c43f51f\"\u003e\u003ccode\u003e6c5b361\u003c/code\u003e\u003c/a\u003e feat(loop): review/polish bg session-resume + mixed-fleet barrier + inner-loo...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/a2fa5ae920e763bd2a19a059905f8754c728fcfd\"\u003e\u003ccode\u003ea2fa5ae\u003c/code\u003e\u003c/a\u003e feat(loop): bg watchdog kill-ladder + bg-aware cleanup_orphans + ca watch (T4)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/143a420cc01d8a8f24722cb908ee15a5c967d1d7\"\u003e\u003ccode\u003e143a420\u003c/code\u003e\u003c/a\u003e feat(loop): bg worktree-harvest + harvest-fail safety (T3)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Nathandela/compound-agent/compare/v2.7.2...v2.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dependency-cruiser` from 17.3.10 to 17.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sverweij/dependency-cruiser/releases\"\u003edependency-cruiser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev17.4.3\u003c/h2\u003e\n\u003ch2\u003e👷 maintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efbea056c build(npm): updates external dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.4.2\u003c/h2\u003e\n\u003ch2\u003e📖 documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eae0fcd40 doc: corrects typos\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e👷 maintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eccef0faf chore(npm): sets ignore-scripts on ci\u003c/li\u003e\n\u003cli\u003eca1fe64a chore(npm): makes publishing staged only\u003c/li\u003e\n\u003cli\u003ed4dad0e9/ 1d1bc84a/ ca1fe64a build(npm): updates external dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.4.1\u003c/h2\u003e\n\u003cp\u003eThis release was created on github, but not published to npmjs\u003c/p\u003e\n\u003ch2\u003ev17.4.0\u003c/h2\u003e\n\u003ch2\u003e✨ features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eaf08fc4e feat(init): adds basic consistency check for typescript \u0026amp; babel features against transpiler availability (\u003ca href=\"https://redirect.github.com/sverweij/dependency-cruiser/issues/1057\"\u003e#1057\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e74ce6904 feat(report): adds configuration option for err-* and markdown reporters to show unresolved module names in the to-part of violations (\u003ca href=\"https://redirect.github.com/sverweij/dependency-cruiser/issues/1056\"\u003e#1056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e3b620f28 feat(analyze): enriches violations with the unresolved module name and the dependency types (\u003ca href=\"https://redirect.github.com/sverweij/dependency-cruiser/issues/1055\"\u003e#1055\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e👷 maintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eb333e0d3/ 1abe8808 build(npm): updates external dependencies\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/sverweij/dependency-cruiser/commit/2584d9e13418d000c587390bacb534352605f8e3\"\u003e\u003ccode\u003e2584d9e\u003c/code\u003e\u003c/a\u003e 17.4.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/fbea056c8337fa560fa17d336c078b49b34f5752\"\u003e\u003ccode\u003efbea056\u003c/code\u003e\u003c/a\u003e build(npm): updates external dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/643462527f7a57ebf0ebc6277b4f47e4cf5180ab\"\u003e\u003ccode\u003e6434625\u003c/code\u003e\u003c/a\u003e 17.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/17595296667bdf8fb0c352042621dd84dce7f4b2\"\u003e\u003ccode\u003e1759529\u003c/code\u003e\u003c/a\u003e chore(ci): simplifies release flow again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/56e501fd13e44fad8377997edf183f6930f6afa9\"\u003e\u003ccode\u003e56e501f\u003c/code\u003e\u003c/a\u003e 17.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/ccef0fafbb4f7ef740f74477a97c2b7bc54606ca\"\u003e\u003ccode\u003eccef0fa\u003c/code\u003e\u003c/a\u003e chore(npm): sets ignore-scripts on ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/ca1fe64a4eef04e7a9177fd7c70ddf73ce0a903c\"\u003e\u003ccode\u003eca1fe64\u003c/code\u003e\u003c/a\u003e chore(npm): makes publishing staged only\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/b5b2c36b0bd0120f949ac1d0b7e74babeca3f8c5\"\u003e\u003ccode\u003eb5b2c36\u003c/code\u003e\u003c/a\u003e build(npm): updates external dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/1d1bc84a22d1020c275b9e6408096bac1ac795bb\"\u003e\u003ccode\u003e1d1bc84\u003c/code\u003e\u003c/a\u003e build(npm): updates external dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/ae0fcd40b90ecf03be2b471b7608c602d744fd58\"\u003e\u003ccode\u003eae0fcd4\u003c/code\u003e\u003c/a\u003e doc: corrects typos\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sverweij/dependency-cruiser/compare/v17.3.10...v17.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@base-ui/react` from 1.4.1 to 1.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mui/base-ui/releases\"\u003e@​base-ui/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.5.0\u003c/h2\u003e\n\u003ch3\u003eGeneral changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove mount performance with interaction splitting, including closed popup mount performance by up to 50% and unmounting performance by up to 85% (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4661\"\u003e#4661\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse local document for virtual arrow (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4662\"\u003e#4662\u003c/a\u003e) by \u003ca href=\"https://github.com/lyzno1\"\u003e\u003ccode\u003e@​lyzno1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix macOS Safari and Firefox minimizing fullscreen when closing popups with \u003c!-- raw HTML omitted --\u003eEsc\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4695\"\u003e#4695\u003c/a\u003e) by \u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop unnecessary memoization (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4693\"\u003e#4693\u003c/a\u003e) by \u003ca href=\"https://github.com/flaviendelangle\"\u003e\u003ccode\u003e@​flaviendelangle\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not use \u003ccode\u003eMath.random()\u003c/code\u003e in \u003ccode\u003euseStableCallback()\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4732\"\u003e#4732\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix return focus when reference disconnects (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4655\"\u003e#4655\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't steal initial focus if focus already moved inside a popup (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4775\"\u003e#4775\u003c/a\u003e) by \u003ca href=\"https://github.com/stefee\"\u003e\u003ccode\u003e@​stefee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAlert Dialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAutocomplete\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix native \u003ccode\u003eFormData\u003c/code\u003e for popup inputs (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4725\"\u003e#4725\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCheckbox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSubmit the associated form when pressing \u003c!-- raw HTML omitted --\u003eEnter\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4713\"\u003e#4713\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCombobox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpose clear visibility state (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4664\"\u003e#4664\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix popup input form submit (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4687\"\u003e#4687\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve \u003ccode\u003ecloseQuery\u003c/code\u003e when closing multiple input-inside-popup combobox (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4715\"\u003e#4715\u003c/a\u003e) by \u003ca href=\"https://github.com/mj12albert\"\u003e\u003ccode\u003e@​mj12albert\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore hidden-input changes while readonly or disabled (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4810\"\u003e#4810\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eConsider the controlled \u003ccode\u003eopen\u003c/code\u003e prop for open state detection (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4712\"\u003e#4712\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDrawer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eForward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eField\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eForm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMenu\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix submenu pointer-events scope for \u003ccode\u003ekeepMounted\u003c/code\u003e portals (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4723\"\u003e#4723\u003c/a\u003e) by \u003ca href=\"https://github.com/twillhorn\"\u003e\u003ccode\u003e@​twillhorn\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/mui/base-ui/blob/master/CHANGELOG.md\"\u003e@​base-ui/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.5.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003eMay 19, 2026\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eGeneral changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove mount performance with interaction splitting, including closed popup mount performance by up to 50% and unmounting performance by up to 85% (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4661\"\u003e#4661\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse local document for virtual arrow (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4662\"\u003e#4662\u003c/a\u003e) by \u003ca href=\"https://github.com/lyzno1\"\u003e\u003ccode\u003e@​lyzno1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix macOS Safari and Firefox minimizing fullscreen when closing popups with \u003c!-- raw HTML omitted --\u003eEsc\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4695\"\u003e#4695\u003c/a\u003e) by \u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop unnecessary memoization (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4693\"\u003e#4693\u003c/a\u003e) by \u003ca href=\"https://github.com/flaviendelangle\"\u003e\u003ccode\u003e@​flaviendelangle\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not use \u003ccode\u003eMath.random()\u003c/code\u003e in \u003ccode\u003euseStableCallback()\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4732\"\u003e#4732\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix return focus when reference disconnects (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4655\"\u003e#4655\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't steal initial focus if focus already moved inside a popup (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4775\"\u003e#4775\u003c/a\u003e) by \u003ca href=\"https://github.com/stefee\"\u003e\u003ccode\u003e@​stefee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAlert Dialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAutocomplete\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix native \u003ccode\u003eFormData\u003c/code\u003e for popup inputs (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4725\"\u003e#4725\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCheckbox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSubmit the associated form when pressing \u003c!-- raw HTML omitted --\u003eEnter\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4713\"\u003e#4713\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCombobox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpose clear visibility state (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4664\"\u003e#4664\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix popup input form submit (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4687\"\u003e#4687\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve \u003ccode\u003ecloseQuery\u003c/code\u003e when closing multiple input-inside-popup combobox (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4715\"\u003e#4715\u003c/a\u003e) by \u003ca href=\"https://github.com/mj12albert\"\u003e\u003ccode\u003e@​mj12albert\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore hidden-input changes while readonly or disabled (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4810\"\u003e#4810\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eConsider the controlled \u003ccode\u003eopen\u003c/code\u003e prop for open state detection (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4712\"\u003e#4712\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDrawer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eForward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eField\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eForm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\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/mui/base-ui/commit/2fdf1b06f2b8b25bf86124bf6c8810a6aa2352a8\"\u003e\u003ccode\u003e2fdf1b0\u003c/code\u003e\u003c/a\u003e [release] v1.5.0 (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4850\"\u003e#4850\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/8535638e9ac36330fd711bd3a3e81ee6898d9468\"\u003e\u003ccode\u003e8535638\u003c/code\u003e\u003c/a\u003e [otp field] Fix vertical arrow slot navigation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4844\"\u003e#4844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/09ce83bfa512300511b690bd30c5a08877d319d9\"\u003e\u003ccode\u003e09ce83b\u003c/code\u003e\u003c/a\u003e [alert dialog] Fix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/5e0f3e73e43e9552cab72318dcbcee70ecfa3abe\"\u003e\u003ccode\u003e5e0f3e7\u003c/code\u003e\u003c/a\u003e [menu] Support group labels in radio groups (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4826\"\u003e#4826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/8db1aa95e52c6a0f687232f638ba0f753f03d53d\"\u003e\u003ccode\u003e8db1aa9\u003c/code\u003e\u003c/a\u003e [otp field] Fix RTL arrow navigation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4847\"\u003e#4847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/ccb4b307586b6549930bd6da30fd2cdcc8b45526\"\u003e\u003ccode\u003eccb4b30\u003c/code\u003e\u003c/a\u003e [otp field] Compose \u003ccode\u003enormalizeValue\u003c/code\u003e with validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4717\"\u003e#4717\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/ad99b44c38e4d044d6a8f40ff9b90d55160a9bbd\"\u003e\u003ccode\u003ead99b44\u003c/code\u003e\u003c/a\u003e [direction provider] Fix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/5579e7f8518c5fb97d2fd977d6d978aa988f46c0\"\u003e\u003ccode\u003e5579e7f\u003c/code\u003e\u003c/a\u003e [drawer] Forward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\\\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/81703365122b88f8ccf25a14587c0e58e8b0ee70\"\u003e\u003ccode\u003e8170336\u003c/code\u003e\u003c/a\u003e [navigation menu] Fix \u003ccode\u003ekeepMounted\u003c/code\u003e content sizing (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4817\"\u003e#4817\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/4a339d027ca09cbddc19da134d9bcc5d75388fee\"\u003e\u003ccode\u003e4a339d0\u003c/code\u003e\u003c/a\u003e [otp field] Prevent locked hidden autofill validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4827\"\u003e#4827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mui/base-ui/commits/v1.5.0/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-query` from 5.100.7 to 5.100.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\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/TanStack/query/blob/main/packages/react-query/CHANGELOG.md\"\u003e@​tanstack/react-query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/fcee7bdc429385ae8ffa224fa8a7a9ec7b8ee380\"\u003e\u003ccode\u003efcee7bd\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.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/TanStack/query/commit/ba6e7beebd50143408f01fcf5d9aee2ec1486f60\"\u003e\u003ccode\u003eba6e7be\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10767\"\u003e#10767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e fix(react): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10\"\u003e#10\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/05cf2bc0a4eae64959dc8a40152e2878190c971b\"\u003e\u003ccode\u003e05cf2bc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10758\"\u003e#10758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e fix(query-core): use built-in NoInfer for generic indexed-access types (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10593\"\u003e#10593\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/5ff4f6936bb66a64267eb4413430f956eecf7248\"\u003e\u003ccode\u003e5ff4f69\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10755\"\u003e#10755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query@5.100.14/packages/react-query\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-virtual` from 3.13.24 to 3.13.26\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/virtual/releases\"\u003e@​tanstack/react-virtual's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-virtual\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.13.26\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.16.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-virtual\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.13.25\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace the \u003ccode\u003euseReducer(() =\u0026gt; ({}), {})\u003c/code\u003e force-rerender pattern with an (\u003ca href=\"https://redirect.github.com/TanStack/virtual/pull/1168\"\u003e#1168\u003c/a\u003e)\nincrementing number counter. Same semantics (every dispatch changes the\nreducer state, forcing a render); zero per-dispatch object allocation.\nTrivial individual cost, but eliminates one steady-state GC source on\nscroll-heavy apps.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.15.0\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/TanStack/virtual/blob/main/packages/react-virtual/CHANGELOG.md\"\u003e@​tanstack/react-virtual's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.13.26\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.16.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.13.25\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace the \u003ccode\u003euseReducer(() =\u0026gt; ({}), {})\u003c/code\u003e force-rerender pattern with an (\u003ca href=\"https://redirect.github.com/TanStack/virtual/pull/1168\"\u003e#1168\u003c/a\u003e)\nincrementing number counter. Same semantics (every dispatch changes the\nreducer state, forcing a render); zero per-dispatch object allocation.\nTrivial individual cost, but eliminates one steady-state GC source on\nscroll-heavy apps.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.15.0\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/TanStack/virtual/commit/693d915e0670cbba5c3e42d0d2a46f085dd7d44e\"\u003e\u003ccode\u003e693d915\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e feat: support end-anchored virtualizers (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/949180be8adf66ea8428b326db72ebad42d5b4c3\"\u003e\u003ccode\u003e949180b\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e perf: virtual-core rewrite for mount/measure-storm, plus iOS Safari handling ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/3374977c623cd95eb4cdb44ad44eb94677d65c1e\"\u003e\u003ccode\u003e3374977\u003c/code\u003e\u003c/a\u003e chore(angular-virtual)!: upgrade Angular to v19 (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/TanStack/virtual/commits/@tanstack/react-virtual@3.13.26/packages/react-virtual\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `date-fns` from 4.1.0 to 4.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/date-fns/date-fns/releases\"\u003edate-fns's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.0\u003c/h2\u003e\n\u003cp\u003eThis release revisits the approach to CDN usage and introduces a new package, \u003ccode\u003e@date-fns/cdn\u003c/code\u003e and deprecates the \u003ccode\u003edate-fns\u003c/code\u003e CDN scripts. It allowed reducing the zipped package size from \u003ccode\u003e5.83 MB\u003c/code\u003e down to \u003ccode\u003e3.96 MB\u003c/code\u003e without introducing any breaking changes.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003ev5.0.0-alpha.0\u003c/code\u003e where CDN scripts are completely removed from \u003ccode\u003edate-fns\u003c/code\u003e the change is more significant and brings the zipped package size down to \u003ccode\u003e2.89 MB\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIt is just the first step in optimizing the package size. Expect further size reduction in the future v4 and v5 versions.\u003c/p\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eDEPRECATED\u003c/strong\u003e: The \u003ccode\u003edate-fns\u003c/code\u003e CDN scripts are now deprecated and will be removed in the next major release. Please switch to the new \u003ccode\u003e@date-fns/cdn\u003c/code\u003e package for CDN usage.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved CDN source maps to reduce the package size. If you rely on them, please switch to the new \u003ccode\u003e@date-fns/cdn\u003c/code\u003e package that still includes them.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003cp\u003eKudos to \u003ca href=\"https://github.com/ImRodry\"\u003e\u003ccode\u003e@​ImRodry\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/puneetdixit200\"\u003e\u003ccode\u003e@​puneetdixit200\u003c/code\u003e\u003c/a\u003e for their contributions.\u003c/p\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed missing modularized optimization fallback (\u003ca href=\"https://x.com/kossnocorp/status/1731181274579325260\"\u003efor Next.js and others\u003c/a\u003e). See \u003ca href=\"https://x.com/kossnocorp/status/1731181274579325260\"\u003e#4193\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003ept\u003c/code\u003e locale first day of week to be Sunday. See \u003ca href=\"https://redirect.github.com/date-fns/date-fns/pull/4195\"\u003e#4195\u003c/a\u003e by \u003ca href=\"https://github.com/ImRodry\"\u003e\u003ccode\u003e@​ImRodry\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003ezh-CN\u003c/code\u003e, \u003ccode\u003ezh-HK\u003c/code\u003e, and \u003ccode\u003ezh-TW\u003c/code\u003e locale month parsing for October, November, and December. See \u003ca href=\"https://redirect.github.com/date-fns/date-fns/pull/4194\"\u003e#4194\u003c/a\u003e by \u003ca href=\"https://github.com/puneetdixit200\"\u003e\u003ccode\u003e@​puneetdixit200\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed type definitions missing in v4.2.0 due to TypeScript misconfiguration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.0\u003c/h2\u003e\n\u003cp\u003eThis is a minor release in all senses, it only includes documentation updates (first of many) that points to the new \u003ca href=\"https://date-fns.org/you-dont-need-date-fns\"\u003eYou Don't Need date-fns*\u003c/a\u003e page.\u003c/p\u003e\n\u003cp\u003e* Not really\u003c/p\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded Temporal API references to the JSDoc annotations of \u003ccode\u003eadd\u003c/code\u003e, \u003ccode\u003eaddBusinessDays\u003c/code\u003e, and \u003ccode\u003eaddDays\u003c/code\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/date-fns/date-fns/commit/cd53d2538cfa318404eff7ade6449b49bf34562e\"\u003e\u003ccode\u003ecd53d25\u003c/code\u003e\u003c/a\u003e Promote to v4.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/d948ec151d395096de8a45fbcd9b1e79c26fda25\"\u003e\u003ccode\u003ed948ec1\u003c/code\u003e\u003c/a\u003e Preserve but deprecate CDN versions for v4, set up v5 with polyfills\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/ee65753cfc5d73cc9acd43aaa8012b3b233ddf32\"\u003e\u003ccode\u003eee65753\u003c/code\u003e\u003c/a\u003e Add root \u003ccode\u003emise :format\u003c/code\u003e task\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/9f5bdf5d5a944772aa9668c4fa6567d89ca01fa9\"\u003e\u003ccode\u003e9f5bdf5\u003c/code\u003e\u003c/a\u003e Add positional argument to \u003ccode\u003etest/smoke.sh\u003c/code\u003e script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/651ead6faf331515814803faf457f5b9db7c9729\"\u003e\u003ccode\u003e651ead6\u003c/code\u003e\u003c/a\u003e Split CDN bundles into separate \u003ccode\u003e@​date-fns/cdn\u003c/code\u003e package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/224c1a209967dad359a2c2adc9a5b0ef72e4fe7b\"\u003e\u003ccode\u003e224c1a2\u003c/code\u003e\u003c/a\u003e Deprecate type tests as attw hangs on date-fns package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/7bb2842dac3d...\n\n_Description has been truncated_","html_url":"https://github.com/htxryan/pearl/pull/73","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/htxryan%2Fpearl/issues/73","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/73/packages"},{"uuid":"4552214647","node_id":"PR_kwDOSrzLCc7g1hCm","number":10,"state":"closed","title":"chore(deps-dev): bump the npm-development-dependencies group with 4 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-29T23:25:47.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T23:22:16.000Z","updated_at":"2026-05-29T23:25:56.000Z","time_to_close":211,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"npm-development-dependencies","update_count":4,"packages":[{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@vitest/coverage-v8","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"vitest","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"tsx","old_version":"4.21.0","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm-development-dependencies group with 4 updates: [@playwright/test](https://github.com/microsoft/playwright), [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8), [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) and [tsx](https://github.com/privatenumber/tsx).\n\nUpdates `@playwright/test` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.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.5 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\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 `vitest` from 4.1.5 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee1830604d57f6a02bf28f8067cdffc06\"\u003e\u003ccode\u003e18af98c\u003c/code\u003e\u003c/a\u003e fix(browser): simplify orchestrator otel carrier (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10285\"\u003e#10285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607cc67c7bf52ead13a606321ffdb06a857\"\u003e\u003ccode\u003e3188260\u003c/code\u003e\u003c/a\u003e feat(browser): provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e (#...\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 `tsx` from 4.21.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\u003ch2\u003ev4.22.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/privatenumber/tsx/compare/v4.21.1...v4.22.0\"\u003e4.22.0\u003c/a\u003e (2026-05-14)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade esbuild to 0.28 (\u003ca href=\"https://redirect.github.com/privatenumber/tsx/issues/789\"\u003e#789\u003c/a\u003e) (\u003ca href=\"https://github.com/privatenumber/tsx/commit/b29f6ee4d6872fdef474eb0a89c6d4e982478a77\"\u003eb29f6ee\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.0\"\u003e\u003ccode\u003enpm package (@​latest dist-tag)\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/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.21.0...v4.22.3\"\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 tsx since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/lilyzhaun/llm-pulse/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/lilyzhaun%2Fllm-pulse/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"},{"uuid":"4551314046","node_id":"PR_kwDOSDwG3M7gymWS","number":12,"state":"closed","title":"chore(deps): Bump the minor-and-patch group in /apps/web with 22 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":"2026-05-29T21:06:36.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T20:09:17.000Z","updated_at":"2026-05-29T21:10:11.000Z","time_to_close":3439,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): Bump","group_name":"minor-and-patch","update_count":22,"packages":[{"name":"@base-ui/react","old_version":"1.4.0","new_version":"1.5.0","repository_url":"https://github.com/mui/base-ui"},{"name":"@hookform/resolvers","old_version":"5.2.2","new_version":"5.4.0","repository_url":"https://github.com/react-hook-form/resolvers"},{"name":"@openfeature/core","old_version":"1.9.2","new_version":"1.10.0","repository_url":"https://github.com/open-feature/js-sdk"},{"name":"@openfeature/web-sdk","old_version":"1.7.3","new_version":"1.8.0","repository_url":"https://github.com/open-feature/js-sdk"},{"name":"@sentry/nextjs","old_version":"10.49.0","new_version":"10.55.0","repository_url":"https://github.com/getsentry/sentry-javascript"},{"name":"@tanstack/react-query","old_version":"5.99.0","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"dashjs","old_version":"5.1.1","new_version":"5.2.0","repository_url":"https://github.com/Dash-Industry-Forum/dash.js"},{"name":"isomorphic-dompurify","old_version":"3.8.0","new_version":"3.15.0","repository_url":"https://github.com/kkomelin/isomorphic-dompurify"},{"name":"lucide-react","old_version":"1.8.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"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":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-hook-form","old_version":"7.72.1","new_version":"7.76.1","repository_url":"https://github.com/react-hook-form/react-hook-form"},{"name":"shadcn","old_version":"4.2.0","new_version":"4.8.3","repository_url":"https://github.com/shadcn-ui/ui"},{"name":"tailwind-merge","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"zustand","old_version":"5.0.12","new_version":"5.0.14","repository_url":"https://github.com/pmndrs/zustand"},{"name":"@axe-core/playwright","old_version":"4.11.1","new_version":"4.11.3","repository_url":"https://github.com/dequelabs/axe-core-npm"},{"name":"@axe-core/react","old_version":"4.11.1","new_version":"4.11.3","repository_url":"https://github.com/dequelabs/axe-core-npm"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"eslint-config-next","old_version":"16.2.3","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"tsx","old_version":"4.21.0","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"}],"path":"/apps/web","ecosystem":"npm"},"body":"Bumps the minor-and-patch group in /apps/web with 22 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@base-ui/react](https://github.com/mui/base-ui/tree/HEAD/packages/react) | `1.4.0` | `1.5.0` |\n| [@hookform/resolvers](https://github.com/react-hook-form/resolvers) | `5.2.2` | `5.4.0` |\n| [@openfeature/core](https://github.com/open-feature/js-sdk) | `1.9.2` | `1.10.0` |\n| [@openfeature/web-sdk](https://github.com/open-feature/js-sdk) | `1.7.3` | `1.8.0` |\n| [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) | `10.49.0` | `10.55.0` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.99.0` | `5.100.14` |\n| [dashjs](https://github.com/Dash-Industry-Forum/dash.js) | `5.1.1` | `5.2.0` |\n| [isomorphic-dompurify](https://github.com/kkomelin/isomorphic-dompurify) | `3.8.0` | `3.15.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.8.0` | `1.17.0` |\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| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-hook-form](https://github.com/react-hook-form/react-hook-form) | `7.72.1` | `7.76.1` |\n| [shadcn](https://github.com/shadcn-ui/ui/tree/HEAD/packages/shadcn) | `4.2.0` | `4.8.3` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [zustand](https://github.com/pmndrs/zustand) | `5.0.12` | `5.0.14` |\n| [@axe-core/playwright](https://github.com/dequelabs/axe-core-npm) | `4.11.1` | `4.11.3` |\n| [@axe-core/react](https://github.com/dequelabs/axe-core-npm) | `4.11.1` | `4.11.3` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.2.3` | `16.2.6` |\n| [tsx](https://github.com/privatenumber/tsx) | `4.21.0` | `4.22.3` |\n\nUpdates `@base-ui/react` from 1.4.0 to 1.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mui/base-ui/releases\"\u003e@​base-ui/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.5.0\u003c/h2\u003e\n\u003ch3\u003eGeneral changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove mount performance with interaction splitting, including closed popup mount performance by up to 50% and unmounting performance by up to 85% (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4661\"\u003e#4661\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse local document for virtual arrow (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4662\"\u003e#4662\u003c/a\u003e) by \u003ca href=\"https://github.com/lyzno1\"\u003e\u003ccode\u003e@​lyzno1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix macOS Safari and Firefox minimizing fullscreen when closing popups with \u003c!-- raw HTML omitted --\u003eEsc\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4695\"\u003e#4695\u003c/a\u003e) by \u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop unnecessary memoization (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4693\"\u003e#4693\u003c/a\u003e) by \u003ca href=\"https://github.com/flaviendelangle\"\u003e\u003ccode\u003e@​flaviendelangle\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not use \u003ccode\u003eMath.random()\u003c/code\u003e in \u003ccode\u003euseStableCallback()\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4732\"\u003e#4732\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix return focus when reference disconnects (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4655\"\u003e#4655\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't steal initial focus if focus already moved inside a popup (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4775\"\u003e#4775\u003c/a\u003e) by \u003ca href=\"https://github.com/stefee\"\u003e\u003ccode\u003e@​stefee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAlert Dialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAutocomplete\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix native \u003ccode\u003eFormData\u003c/code\u003e for popup inputs (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4725\"\u003e#4725\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCheckbox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSubmit the associated form when pressing \u003c!-- raw HTML omitted --\u003eEnter\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4713\"\u003e#4713\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCombobox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpose clear visibility state (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4664\"\u003e#4664\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix popup input form submit (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4687\"\u003e#4687\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve \u003ccode\u003ecloseQuery\u003c/code\u003e when closing multiple input-inside-popup combobox (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4715\"\u003e#4715\u003c/a\u003e) by \u003ca href=\"https://github.com/mj12albert\"\u003e\u003ccode\u003e@​mj12albert\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore hidden-input changes while readonly or disabled (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4810\"\u003e#4810\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eConsider the controlled \u003ccode\u003eopen\u003c/code\u003e prop for open state detection (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4712\"\u003e#4712\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDrawer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eForward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eField\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eForm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMenu\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix submenu pointer-events scope for \u003ccode\u003ekeepMounted\u003c/code\u003e portals (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4723\"\u003e#4723\u003c/a\u003e) by \u003ca href=\"https://github.com/twillhorn\"\u003e\u003ccode\u003e@​twillhorn\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/mui/base-ui/blob/master/CHANGELOG.md\"\u003e@​base-ui/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.5.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003eMay 19, 2026\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eGeneral changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove mount performance with interaction splitting, including closed popup mount performance by up to 50% and unmounting performance by up to 85% (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4661\"\u003e#4661\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse local document for virtual arrow (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4662\"\u003e#4662\u003c/a\u003e) by \u003ca href=\"https://github.com/lyzno1\"\u003e\u003ccode\u003e@​lyzno1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix macOS Safari and Firefox minimizing fullscreen when closing popups with \u003c!-- raw HTML omitted --\u003eEsc\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4695\"\u003e#4695\u003c/a\u003e) by \u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop unnecessary memoization (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4693\"\u003e#4693\u003c/a\u003e) by \u003ca href=\"https://github.com/flaviendelangle\"\u003e\u003ccode\u003e@​flaviendelangle\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not use \u003ccode\u003eMath.random()\u003c/code\u003e in \u003ccode\u003euseStableCallback()\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4732\"\u003e#4732\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix return focus when reference disconnects (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4655\"\u003e#4655\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't steal initial focus if focus already moved inside a popup (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4775\"\u003e#4775\u003c/a\u003e) by \u003ca href=\"https://github.com/stefee\"\u003e\u003ccode\u003e@​stefee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAlert Dialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAutocomplete\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix native \u003ccode\u003eFormData\u003c/code\u003e for popup inputs (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4725\"\u003e#4725\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCheckbox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSubmit the associated form when pressing \u003c!-- raw HTML omitted --\u003eEnter\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4713\"\u003e#4713\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCombobox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpose clear visibility state (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4664\"\u003e#4664\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix popup input form submit (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4687\"\u003e#4687\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve \u003ccode\u003ecloseQuery\u003c/code\u003e when closing multiple input-inside-popup combobox (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4715\"\u003e#4715\u003c/a\u003e) by \u003ca href=\"https://github.com/mj12albert\"\u003e\u003ccode\u003e@​mj12albert\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore hidden-input changes while readonly or disabled (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4810\"\u003e#4810\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eConsider the controlled \u003ccode\u003eopen\u003c/code\u003e prop for open state detection (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4712\"\u003e#4712\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDrawer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eForward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eField\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eForm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\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/mui/base-ui/commit/2fdf1b06f2b8b25bf86124bf6c8810a6aa2352a8\"\u003e\u003ccode\u003e2fdf1b0\u003c/code\u003e\u003c/a\u003e [release] v1.5.0 (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4850\"\u003e#4850\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/8535638e9ac36330fd711bd3a3e81ee6898d9468\"\u003e\u003ccode\u003e8535638\u003c/code\u003e\u003c/a\u003e [otp field] Fix vertical arrow slot navigation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4844\"\u003e#4844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/09ce83bfa512300511b690bd30c5a08877d319d9\"\u003e\u003ccode\u003e09ce83b\u003c/code\u003e\u003c/a\u003e [alert dialog] Fix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/5e0f3e73e43e9552cab72318dcbcee70ecfa3abe\"\u003e\u003ccode\u003e5e0f3e7\u003c/code\u003e\u003c/a\u003e [menu] Support group labels in radio groups (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4826\"\u003e#4826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/8db1aa95e52c6a0f687232f638ba0f753f03d53d\"\u003e\u003ccode\u003e8db1aa9\u003c/code\u003e\u003c/a\u003e [otp field] Fix RTL arrow navigation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4847\"\u003e#4847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/ccb4b307586b6549930bd6da30fd2cdcc8b45526\"\u003e\u003ccode\u003eccb4b30\u003c/code\u003e\u003c/a\u003e [otp field] Compose \u003ccode\u003enormalizeValue\u003c/code\u003e with validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4717\"\u003e#4717\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/ad99b44c38e4d044d6a8f40ff9b90d55160a9bbd\"\u003e\u003ccode\u003ead99b44\u003c/code\u003e\u003c/a\u003e [direction provider] Fix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/5579e7f8518c5fb97d2fd977d6d978aa988f46c0\"\u003e\u003ccode\u003e5579e7f\u003c/code\u003e\u003c/a\u003e [drawer] Forward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\\\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/81703365122b88f8ccf25a14587c0e58e8b0ee70\"\u003e\u003ccode\u003e8170336\u003c/code\u003e\u003c/a\u003e [navigation menu] Fix \u003ccode\u003ekeepMounted\u003c/code\u003e content sizing (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4817\"\u003e#4817\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/4a339d027ca09cbddc19da134d9bcc5d75388fee\"\u003e\u003ccode\u003e4a339d0\u003c/code\u003e\u003c/a\u003e [otp field] Prevent locked hidden autofill validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4827\"\u003e#4827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mui/base-ui/commits/v1.5.0/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@hookform/resolvers` from 5.2.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/react-hook-form/resolvers/releases\"\u003e@​hookform/resolvers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.4.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/compare/v5.3.0...v5.4.0\"\u003e5.4.0\u003c/a\u003e (2026-05-21)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat: add ata-validator resolver (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/845\"\u003e#845\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix issue with toNestErrors.ts (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/848\"\u003e#848\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003eadd guidance on passing context to \u003ccode\u003eyupResolver\u003c/code\u003e (useForm context) (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/835\"\u003e#835\u003c/a\u003e)  (\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/3d2992472adf5735b46b175e22bea82fddf13854\"\u003e3d29924\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/react-hook-form/resolvers/commit/3d2992472adf5735b46b175e22bea82fddf13854\"\u003e\u003ccode\u003e3d29924\u003c/code\u003e\u003c/a\u003e feat: add guidance on passing context to \u003ccode\u003eyupResolver\u003c/code\u003e (useForm context) (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/835\"\u003e#835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/56b68f3798612601190a533887847d8fef2c94af\"\u003e\u003ccode\u003e56b68f3\u003c/code\u003e\u003c/a\u003e feat: 5.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/cf8562d88ce3a1658676b2ef996347f29e05b3ee\"\u003e\u003ccode\u003ecf8562d\u003c/code\u003e\u003c/a\u003e update readme on ata-validator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/5e5b6103692fa599ddacca39a03bf707e73a5012\"\u003e\u003ccode\u003e5e5b610\u003c/code\u003e\u003c/a\u003e fix issue with toNestErrors.ts (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/848\"\u003e#848\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/72aacf8604d697a29a1859f8bffccf18adb86add\"\u003e\u003ccode\u003e72aacf8\u003c/code\u003e\u003c/a\u003e Revise supported versions in SECURITY.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/ad89a20d869f2dc21b905168c5578b3522c01b64\"\u003e\u003ccode\u003ead89a20\u003c/code\u003e\u003c/a\u003e feat: add ata-validator resolver (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/845\"\u003e#845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/02286db88310fd23e1de61ad880c23e210801813\"\u003e\u003ccode\u003e02286db\u003c/code\u003e\u003c/a\u003e ci: updated publish workflow to use node 24 (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/838\"\u003e#838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/2e9bc7c7d02506d336e20d8c0bae0c479f3662ec\"\u003e\u003ccode\u003e2e9bc7c\u003c/code\u003e\u003c/a\u003e Fix(zodResolver): error paths in complex unions \u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/787\"\u003e#787\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/react-hook-form/resolvers/compare/v5.2.2...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@openfeature/core` from 1.9.2 to 1.10.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/open-feature/js-sdk/releases\"\u003e@​openfeature/core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecore: v1.10.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/compare/core-v1.9.2...core-v1.10.0\"\u003e1.10.0\u003c/a\u003e (2026-04-21)\u003c/h2\u003e\n\u003ch3\u003e✨ New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u0026quot;sideEffects\u0026quot;: false to package.json files for all packages (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1343\"\u003e#1343\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/d8e968ed2513fe986a6500895f3399303a2f0b96\"\u003ed8e968e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport type-safe flag keys via module augmentation (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1349\"\u003e#1349\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/fb2ed4a7d64d9b8437975a0ef6cb4fe6a12dd671\"\u003efb2ed4a\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/open-feature/js-sdk/commit/54acc8a49544aecf7633e3e0af793e3d7daeaffc\"\u003e\u003ccode\u003e54acc8a\u003c/code\u003e\u003c/a\u003e chore(main): release core 1.10.0 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1392\"\u003e#1392\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/a36733b239de9753fd7a524f97e250ee1b96b3a3\"\u003e\u003ccode\u003ea36733b\u003c/code\u003e\u003c/a\u003e chore: pin npm release version in publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/2b7ab6b9c0cfcccb83b31ca34f533eece33df4d5\"\u003e\u003ccode\u003e2b7ab6b\u003c/code\u003e\u003c/a\u003e chore: pin npm release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/7924205b8b1ba6f4b25d27d45541c87c14d89737\"\u003e\u003ccode\u003e7924205\u003c/code\u003e\u003c/a\u003e chore: replace test-harness submodule with spec submodule (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1359\"\u003e#1359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/aab82bd65bb11d2ce8eb3e830f992002a8030c13\"\u003e\u003ccode\u003eaab82bd\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​angular/compiler\u003c/code\u003e to v21.2.4 [security] (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1386\"\u003e#1386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/528f826a8e56874d5af77b2034186b341bcb975d\"\u003e\u003ccode\u003e528f826\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint-config-prettier to v10 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1299\"\u003e#1299\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/1999690c22b809a575a02187eb5fdddcfb5fe95c\"\u003e\u003ccode\u003e1999690\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​angular/compiler\u003c/code\u003e to v21.2.4 [security] (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1383\"\u003e#1383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/0c955b5af2dc1470af29c3c77c7dbf47afb31153\"\u003e\u003ccode\u003e0c955b5\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​angular/compiler\u003c/code\u003e to v21.2.4 [security] (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1382\"\u003e#1382\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/e9ac76f9500d638945110c490c3fab90deaa4122\"\u003e\u003ccode\u003ee9ac76f\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v22.19.17 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1381\"\u003e#1381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/9bb2271339e47c3747b0ded0feca287aefd67601\"\u003e\u003ccode\u003e9bb2271\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​angular/build\u003c/code\u003e to v21.2.7 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1380\"\u003e#1380\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/open-feature/js-sdk/compare/core-v1.9.2...core-v1.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@openfeature/web-sdk` from 1.7.3 to 1.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/open-feature/js-sdk/releases\"\u003e@​openfeature/web-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecore: v1.8.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/compare/core-v1.7.2...core-v1.8.0\"\u003e1.8.0\u003c/a\u003e (2025-04-10)\u003c/h2\u003e\n\u003ch3\u003e✨ New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd support for abort controllers to event handlers (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1151\"\u003e#1151\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/6a224830fa4e62fc30a7802536f6f6fc3f772038\"\u003e6a22483\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eweb-sdk: v1.8.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/compare/web-sdk-v1.7.3...web-sdk-v1.8.0\"\u003e1.8.0\u003c/a\u003e (2026-04-21)\u003c/h2\u003e\n\u003ch3\u003e✨ New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u0026quot;sideEffects\u0026quot;: false to package.json files for all packages (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1343\"\u003e#1343\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/d8e968ed2513fe986a6500895f3399303a2f0b96\"\u003ed8e968e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport type-safe flag keys via module augmentation (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1349\"\u003e#1349\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/fb2ed4a7d64d9b8437975a0ef6cb4fe6a12dd671\"\u003efb2ed4a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport type-safe variant values for InMemoryProvider (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1356\"\u003e#1356\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/431f899191a2f7693fea9fab40f7cfb1f22f61f8\"\u003e431f899\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧹 Chore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ereplace test-harness submodule with spec submodule (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1359\"\u003e#1359\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/7924205b8b1ba6f4b25d27d45541c87c14d89737\"\u003e7924205\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/open-feature/js-sdk/commit/b60c3df3727232a5b2366e4327eab754fbfa790a\"\u003e\u003ccode\u003eb60c3df\u003c/code\u003e\u003c/a\u003e chore(main): release core 1.8.0 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1155\"\u003e#1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/5b19eb035ab79633f675d2ae891f96b356ae34df\"\u003e\u003ccode\u003e5b19eb0\u003c/code\u003e\u003c/a\u003e chore: use server src not dist in nest tests (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/5afe61f9e351b037b04c93a1d81aee8016756748\"\u003e\u003ccode\u003e5afe61f\u003c/code\u003e\u003c/a\u003e feat: add polyfill for react use hook (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1157\"\u003e#1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/60401b6ceccc345fdadccfab18ba07b5981b540c\"\u003e\u003ccode\u003e60401b6\u003c/code\u003e\u003c/a\u003e chore: prompt release of react v1 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1162\"\u003e#1162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/4482c2b33a55cf3f8bf9a3bb0934558ea0157d5d\"\u003e\u003ccode\u003e4482c2b\u003c/code\u003e\u003c/a\u003e chore: add global maintainers to codeowners (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/2c5b37c79d72d60864c27b9e67d96e99ef4ae241\"\u003e\u003ccode\u003e2c5b37c\u003c/code\u003e\u003c/a\u003e fix: Typo in name of the function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/cf89e7da24f43e8142e117ae3b662f380a66e514\"\u003e\u003ccode\u003ecf89e7d\u003c/code\u003e\u003c/a\u003e chore: add nest to test script (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/ae8fce87530005ed20f7e68dc696ce67053fca31\"\u003e\u003ccode\u003eae8fce8\u003c/code\u003e\u003c/a\u003e feat: add a top-level method for accessing providers (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1152\"\u003e#1152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/eec21dda821af412594347b2b79bd376544e7fd8\"\u003e\u003ccode\u003eeec21dd\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency uuid to v11 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1073\"\u003e#1073\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/6a224830fa4e62fc30a7802536f6f6fc3f772038\"\u003e\u003ccode\u003e6a22483\u003c/code\u003e\u003c/a\u003e feat: add support for abort controllers to event handlers (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1151\"\u003e#1151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/open-feature/js-sdk/compare/web-sdk-v1.7.3...core-v1.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@sentry/nextjs` from 10.49.0 to 10.55.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-javascript/releases\"\u003e@​sentry/nextjs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.55.0\u003c/h2\u003e\n\u003ch3\u003eImportant Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(hono): Promote \u003ccode\u003e@sentry/hono\u003c/code\u003e to stable and deprecate \u003ccode\u003ehonoIntegration\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21208\"\u003e#21208\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003e@sentry/hono\u003c/code\u003e SDK is now stable. See the \u003ca href=\"https://docs.sentry.io/platforms/javascript/guides/hono/\"\u003eSentry Hono SDK docs\u003c/a\u003e to get started.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003edocs(tanstackstart-react): Promote SDK status to beta (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21175\"\u003e#21175\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis release promotes the \u003ccode\u003e@sentry/tanstackstart-react\u003c/code\u003e SDK to beta. For details on how to use it, check out the\n\u003ca href=\"https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/\"\u003eSentry TanStack Start SDK docs\u003c/a\u003e. Please reach out on\n\u003ca href=\"https://github.com/getsentry/sentry-javascript/issues/new/choose\"\u003eGitHub\u003c/a\u003e if you have any feedback or concerns.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(hono): Add \u003ccode\u003eshouldHandleError\u003c/code\u003e option to \u003ccode\u003esentry()\u003c/code\u003e middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21205\"\u003e#21205\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003esentry()\u003c/code\u003e middleware now accepts a \u003ccode\u003eshouldHandleError\u003c/code\u003e callback to control which errors are captured and sent to Sentry. By default, 3xx/4xx HTTP errors are ignored and 5xx errors and plain \u003ccode\u003eError\u003c/code\u003e objects are captured. Return \u003ccode\u003etrue\u003c/code\u003e from the callback to capture an error, \u003ccode\u003efalse\u003c/code\u003e to suppress it.\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003eapp.use(\n  sentry(app, {\n    dsn: '__DSN__',\n    shouldHandleError(error) {\n      const status = (error as { status?: number })?.status;\n      // Capture 401/403 in addition to the default 5xx errors\n      return status === 401 || status === 403 || typeof status !== 'number' || status \u0026gt;= 500;\n    },\n  }),\n);\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003etest(tanstackstart-react): Move initialization to client entry point (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21161\"\u003e#21161\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eChange the recommended setup for the SDK to do \u003ccode\u003eSentry.init()\u003c/code\u003e in the client entry file to capture telemetry that is emitted ahead of page hydration.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Add distributed tracing (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21144\"\u003e#21144\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer and client traces are now automatically connected, allowing you to see the full request lifecycle from server-side rendering through client-side hydration in a single trace.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Add server-side route parametrization (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21147\"\u003e#21147\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer transaction names are now parametrized automatically (e.g., \u003ccode\u003eGET /users/123\u003c/code\u003e becomes \u003ccode\u003eGET /users/$userId\u003c/code\u003e), improving transaction grouping in Sentry.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Show readable server function names in traces (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21190\"\u003e#21190\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer function spans now show human-readable names (e.g., \u003ccode\u003eGET /_serverFn/greet\u003c/code\u003e instead of \u003ccode\u003eGET /_serverFn/a10e70b3...\u003c/code\u003e). The \u003ccode\u003etanstackstart.function.hash.sha256\u003c/code\u003e span attribute has been renamed to \u003ccode\u003etanstackstart.function.id\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): Migrate request data to \u003ccode\u003edataCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21071\"\u003e#21071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(hono): Add warning in Bun for double init (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21195\"\u003e#21195\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/getsentry/sentry-javascript/blob/develop/CHANGELOG.md\"\u003e@​sentry/nextjs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.55.0\u003c/h2\u003e\n\u003ch3\u003eImportant Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(hono): Promote \u003ccode\u003e@sentry/hono\u003c/code\u003e to stable and deprecate \u003ccode\u003ehonoIntegration\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21208\"\u003e#21208\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003e@sentry/hono\u003c/code\u003e SDK is now stable. See the \u003ca href=\"https://docs.sentry.io/platforms/javascript/guides/hono/\"\u003eSentry Hono SDK docs\u003c/a\u003e to get started.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003edocs(tanstackstart-react): Promote SDK status to beta (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21175\"\u003e#21175\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis release promotes the \u003ccode\u003e@sentry/tanstackstart-react\u003c/code\u003e SDK to beta. For details on how to use it, check out the\n\u003ca href=\"https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/\"\u003eSentry TanStack Start SDK docs\u003c/a\u003e. Please reach out on\n\u003ca href=\"https://github.com/getsentry/sentry-javascript/issues/new/choose\"\u003eGitHub\u003c/a\u003e if you have any feedback or concerns.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(hono): Add \u003ccode\u003eshouldHandleError\u003c/code\u003e option to \u003ccode\u003esentry()\u003c/code\u003e middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21205\"\u003e#21205\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003esentry()\u003c/code\u003e middleware now accepts a \u003ccode\u003eshouldHandleError\u003c/code\u003e callback to control which errors are captured and sent to Sentry. By default, 3xx/4xx HTTP errors are ignored and 5xx errors and plain \u003ccode\u003eError\u003c/code\u003e objects are captured. Return \u003ccode\u003etrue\u003c/code\u003e from the callback to capture an error, \u003ccode\u003efalse\u003c/code\u003e to suppress it.\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003eapp.use(\n  sentry(app, {\n    dsn: '__DSN__',\n    shouldHandleError(error) {\n      const status = (error as { status?: number })?.status;\n      // Capture 401/403 in addition to the default 5xx errors\n      return status === 401 || status === 403 || typeof status !== 'number' || status \u0026gt;= 500;\n    },\n  }),\n);\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003etest(tanstackstart-react): Move initialization to client entry point (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21161\"\u003e#21161\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eChange the recommended setup for the SDK to do \u003ccode\u003eSentry.init()\u003c/code\u003e in the client entry file to capture telemetry that is emitted ahead of page hydration.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Add distributed tracing (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21144\"\u003e#21144\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer and client traces are now automatically connected, allowing you to see the full request lifecycle from server-side rendering through client-side hydration in a single trace.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Add server-side route parametrization (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21147\"\u003e#21147\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer transaction names are now parametrized automatically (e.g., \u003ccode\u003eGET /users/123\u003c/code\u003e becomes \u003ccode\u003eGET /users/$userId\u003c/code\u003e), improving transaction grouping in Sentry.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Show readable server function names in traces (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21190\"\u003e#21190\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer function spans now show human-readable names (e.g., \u003ccode\u003eGET /_serverFn/greet\u003c/code\u003e instead of \u003ccode\u003eGET /_serverFn/a10e70b3...\u003c/code\u003e). The \u003ccode\u003etanstackstart.function.hash.sha256\u003c/code\u003e span attribute has been renamed to \u003ccode\u003etanstackstart.function.id\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): Migrate request data to \u003ccode\u003edataCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21071\"\u003e#21071\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/getsentry/sentry-javascript/commit/acd7b57e1daa9041ee8a081c42af219aa994cca8\"\u003e\u003ccode\u003eacd7b57\u003c/code\u003e\u003c/a\u003e release: 10.55.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/d5323d24e790bf3200e029bce30ceb86954a7685\"\u003e\u003ccode\u003ed5323d2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/21216\"\u003e#21216\u003c/a\u003e from getsentry/prepare-release/10.55.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/2fb19298a7236ff5421916851439c20b2634c701\"\u003e\u003ccode\u003e2fb1929\u003c/code\u003e\u003c/a\u003e meta(changelog): Update changelog for 10.55.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/556bcb391de918a64cc9dcdfa5f58a4b365b0444\"\u003e\u003ccode\u003e556bcb3\u003c/code\u003e\u003c/a\u003e feat(hono): Add \u003ccode\u003eshouldHandleError\u003c/code\u003e as middleware option (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/21205\"\u003e#21205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/7a67ea48b66d173d8db4cf4f8610c9aa8221fc74\"\u003e\u003ccode\u003e7a67ea4\u003c/code\u003e\u003c/a\u003e feat(hono): Promote \u003ccode\u003e@sentry/hono\u003c/code\u003e to stable and deprecate \u003ccode\u003ehonoIntegration\u003c/code\u003e ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/cead7f9836034226bec77ebdb168e8338cffeb21\"\u003e\u003ccode\u003ecead7f9\u003c/code\u003e\u003c/a\u003e fix(e2e): Fix \u003ccode\u003eastro-6\u003c/code\u003e e2e test build by relaxing astro version range (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/21211\"\u003e#21211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/75fd1d545dbba62faa72c15f0905aea2055d7bf1\"\u003e\u003ccode\u003e75fd1d5\u003c/code\u003e\u003c/a\u003e chore(changelog): clarify array attributes impact on \u003ccode\u003ebeforeSend*\u003c/code\u003e callbacks ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/8a2a490df1340df136cb051d9d8f06aaeb36aad6\"\u003e\u003ccode\u003e8a2a490\u003c/code\u003e\u003c/a\u003e fix(cloudflare): Use original waitUntil to not create a deadlock (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/21197\"\u003e#21197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/f7b506d5ad421a755c368b4a7754d4cd8027de48\"\u003e\u003ccode\u003ef7b506d\u003c/code\u003e\u003c/a\u003e feat(metrics): Migrate metrics to use \u003ccode\u003edataCollection\u003c/code\u003e instead of `sendDefaul...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/f55fc305ee86eb4e276105f7fda4c0328f862ab9\"\u003e\u003ccode\u003ef55fc30\u003c/code\u003e\u003c/a\u003e feat(core): Migrate request data to \u003ccode\u003edataCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/21071\"\u003e#21071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-javascript/compare/10.49.0...10.55.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-query` from 5.99.0 to 5.100.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\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/TanStack/query/blob/main/packages/react-query/CHANGELOG.md\"\u003e@​tanstack/react-query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/fcee7bdc429385ae8ffa224fa8a7a9ec7b8ee380\"\u003e\u003ccode\u003efcee7bd\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.8\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/ba6e7beebd50143408f01fcf5d9aee2ec1486f60\"\u003e\u003ccode\u003eba6e7be\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10767\"\u003e#10767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e fix(react): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10\"\u003e#10\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/05cf2bc0a4eae64959dc8a40152e2878190c971b\"\u003e\u003ccode\u003e05cf2bc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10758\"\u003e#10758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e fix(query-core): use built-in NoInfer for generic indexed-access types (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10593\"\u003e#10593\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/5ff4f6936bb66a64267eb4413430f956eecf7248\"\u003e\u003ccode\u003e5ff4f69\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10755\"\u003e#10755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query@5.100.14/packages/react-query\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dashjs` from 5.1.1 to 5.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/releases\"\u003edashjs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003edash.js v5.2.0\u003c/h2\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eIntroduces comprehensive support for CMCD (Common Media Client Data) Version 2, significantly expanding the player's capabilities for media analytics and client-side data reporting. The implementation leverages the \u003ccode\u003e@​svta/cml-cmcd\u003c/code\u003e library's CmcdReporter to centralize reporting mechanisms, reducing complexity and improving maintainability while aligning with the latest CMCD specifications by \u003ca href=\"https://github.com/cotid-qualabs\"\u003e\u003ccode\u003e@​cotid-qualabs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sebastianpiq\"\u003e\u003ccode\u003e@​sebastianpiq\u003c/code\u003e\u003c/a\u003e , \u003ca href=\"https://github.com/littlespex\"\u003e\u003ccode\u003e@​littlespex\u003c/code\u003e\u003c/a\u003e,\u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4816\"\u003eDash-Industry-Forum/dash.js#4816\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Certurl element by \u003ca href=\"https://github.com/gorkemg\"\u003e\u003ccode\u003e@​gorkemg\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e  in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4876\"\u003eDash-Industry-Forum/dash.js#4876\u003c/a\u003e,  \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4973\"\u003eDash-Industry-Forum/dash.js#4973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Apple FairPlay Streaming (FPS) DRM support by \u003ca href=\"https://github.com/tobbee\"\u003e\u003ccode\u003e@​tobbee\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4941\"\u003eDash-Industry-Forum/dash.js#4941\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a new reference UI by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e (Claude Opus 4.6 was used in this PR) in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4974\"\u003eDash-Industry-Forum/dash.js#4974\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a limitBitrateByPortalMinimum setting to prevent limiting too much by \u003ca href=\"https://github.com/robertbryer\"\u003e\u003ccode\u003e@​robertbryer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4950\"\u003eDash-Industry-Forum/dash.js#4950\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate 608 library to support H.265/H.266 payloads by \u003ca href=\"https://github.com/littlespex\"\u003e\u003ccode\u003e@​littlespex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4954\"\u003eDash-Industry-Forum/dash.js#4954\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a new method getRepresentationsByTypeUnfiltered. This allows applications to get all Representations regardless of any filter settings  by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4963\"\u003eDash-Industry-Forum/dash.js#4963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnable mapping of Supplemental and Essential Properties from AdaptationSet to all Representations, but exclude those needed for URLQueryParams according to Annex I. by \u003ca href=\"https://github.com/stschr\"\u003e\u003ccode\u003e@​stschr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4901\"\u003eDash-Industry-Forum/dash.js#4901\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a setting blacklistExpiryTime to expire blacklisted service locations by \u003ca href=\"https://github.com/robertbryer\"\u003e\u003ccode\u003e@​robertbryer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4983\"\u003eDash-Industry-Forum/dash.js#4983\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eImprovements\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePerformance: reduce Object.keys allocations in hot paths by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4937\"\u003eDash-Industry-Forum/dash.js#4937\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance: make GapController interval configurable and reduce hot-path allocations by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4943\"\u003eDash-Industry-Forum/dash.js#4943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApply npm audit fixes by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4899\"\u003eDash-Industry-Forum/dash.js#4899\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4994\"\u003eDash-Industry-Forum/dash.js#4994\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/5023\"\u003eDash-Industry-Forum/dash.js#5023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow preload to work even when the setting cacheInitSegments is false by \u003ca href=\"https://github.com/robertbryer\"\u003e\u003ccode\u003e@​robertbryer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4957\"\u003eDash-Industry-Forum/dash.js#4957\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdds a warning message when an AdaptationSet is filtered because of unsupported EssentialProperties by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4961\"\u003eDash-Industry-Forum/dash.js#4961\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Agents.md with information for AI agents by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4965\"\u003eDash-Industry-Forum/dash.js#4965\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove track equality check by \u003ca href=\"https://github.com/stschr\"\u003e\u003ccode\u003e@​stschr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4966\"\u003eDash-Industry-Forum/dash.js#4966\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLow Latency Improvements by \u003ca href=\"https://github.com/ryanmccartney\"\u003e\u003ccode\u003e@​ryanmccartney\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4916\"\u003eDash-Industry-Forum/dash.js#4916\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRefactors the GitHub actions to make specific parts reusable and avoid code duplication by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4975\"\u003eDash-Industry-Forum/dash.js#4975\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd notification pane in reference UI by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4977\"\u003eDash-Industry-Forum/dash.js#4977\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRefactor: replace bcp-47-normalize with lightweight BCP-47 normalization (-185 KB) by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4970\"\u003eDash-Industry-Forum/dash.js#4970\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdds options to set the persistentState and the distinctiveIdentifier via the reference UIby \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4991\"\u003eDash-Industry-Forum/dash.js#4991\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace ua-parser-js with lightweight browser detection (-26 KB) by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4972\"\u003eDash-Industry-Forum/dash.js#4972\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/5007\"\u003eDash-Industry-Forum/dash.js#5007\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDynamically read out request timeout in case settings are updated during runtime by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4997\"\u003eDash-Industry-Forum/dash.js#4997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAbort retrieveManifest requests after reset by \u003ca href=\"https://github.com/robertbryer\"\u003e\u003ccode\u003e@​robertbryer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/5027\"\u003eDash-Industry-Forum/dash.js#5027\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix an issue with AdaptationSets linking to themself in a SupplementalProperty by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4918\"\u003eDash-Industry-Forum/dash.js#4918\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove karma-webdriver-launcher because of insecurities and add buffe… by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4920\"\u003eDash-Industry-Forum/dash.js#4920\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCheck K value when determining whether to enable low latency mode by \u003ca href=\"https://github.com/ryanmccartney\"\u003e\u003ccode\u003e@​ryanmccartney\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4915\"\u003eDash-Industry-Forum/dash.js#4915\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix an issue that lead to exponential Increase in Concurrent Segment Requests for low latency streaming by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4921\"\u003eDash-Industry-Forum/dash.js#4921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echanging media asset location by \u003ca href=\"https://github.com/stschr\"\u003e\u003ccode\u003e@​stschr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4928\"\u003eDash-Industry-Forum/dash.js#4928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix downloads of WebVTT segments in multiperiod MPD by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4925\"\u003eDash-Industry-Forum/dash.js#4925\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix a bug in the L3D implementation when playing livesim2 content by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4927\"\u003eDash-Industry-Forum/dash.js#4927\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(steering): Fix incorrect splice/indexOf arguments in blacklist timer cleanup by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4946\"\u003eDash-Industry-Forum/dash.js#4946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(mss): prevent crash when all DVR segments are removed by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4947\"\u003eDash-Industry-Forum/dash.js#4947\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix addressing changed codecs at Period boundaries by \u003ca href=\"https://github.com/stschr\"\u003e\u003ccode\u003e@​stschr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4949\"\u003eDash-Industry-Forum/dash.js#4949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdds missing NEW_TRACK_SELECTED to Typescript file. Fixes \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/4940\"\u003e#4940\u003c/a\u003e by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4952\"\u003eDash-Industry-Forum/dash.js#4952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChange StreamProcessor bandwidth check for scalable LCEVC by \u003ca href=\"https://github.com/v-nova-romas\"\u003e\u003ccode\u003e@​v-nova-romas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4951\"\u003eDash-Industry-Forum/dash.js#4951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix/nullpointer accessibility by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4955\"\u003eDash-Industry-Forum/dash.js#4955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(streaming): add LRU cache limit to InitCache by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4935\"\u003eDash-Industry-Forum/dash.js#4935\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(core): prevent memory leaks in EventBus and XHRLoader by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4934\"\u003eDash-Industry-Forum/dash.js#4934\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace Edgeware with Eyevinn in reference player contributors by \u003ca href=\"https://github.com/tobbee\"\u003e\u003ccode\u003e@​tobbee\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4968\"\u003eDash-Industry-Forum/dash.js#4968\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ejsdoc fix + verbose logger by \u003ca href=\"https://github.com/stschr\"\u003e\u003ccode\u003e@​stschr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4980\"\u003eDash-Industry-Forum/dash.js#4980\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: make MediaPlayerFactory SSR-safe to prevent 'window is not defined' error by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4929\"\u003eDash-Industry-Forum/dash.js#4929\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/Dash-Industry-Forum/dash.js/commit/4a2d7a93782e544999734410166101a68f8ba079\"\u003e\u003ccode\u003e4a2d7a9\u003c/code\u003e\u003c/a\u003e Add dist files for version 5.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/be1e2ef8d7164d87c01f202a61fdd0afcf124804\"\u003e\u003ccode\u003ebe1e2ef\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/development'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/d91d92374c24442153c684a4eb199b518bfba732\"\u003e\u003ccode\u003ed91d923\u003c/code\u003e\u003c/a\u003e Change description of test vector in list of smoke vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/745c3bc96710810193d7e9f552b974c4fe06a39d\"\u003e\u003ccode\u003e745c3bc\u003c/code\u003e\u003c/a\u003e Fix vulnerability issues in simple express server (\u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/5031\"\u003e#5031\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/5647d8927f6106e19ca5a190c3af4a3f739dcc4a\"\u003e\u003ccode\u003e5647d89\u003c/code\u003e\u003c/a\u003e Feature: CMCD v2 (\u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/61d6502269cb3e838c4d2b84e5607971d8b1baed\"\u003e\u003ccode\u003e61d6502\u003c/code\u003e\u003c/a\u003e Add a setting blacklistExpiryTime to expire blacklisted service locations (\u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/4\"\u003e#4\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/93f6aec340cbecdaee504e28e0d1029461dad6a0\"\u003e\u003ccode\u003e93f6aec\u003c/code\u003e\u003c/a\u003e Fix unreachable code warning in MediaController and update eslint config to p...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/7bcce8b5215a45133b303ead77f2d6838a23d528\"\u003e\u003ccode\u003e7bcce8b\u003c/code\u003e\u003c/a\u003e Abort retrieveManifest requests after reset (\u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/5027\"\u003e#5027\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/551cfd167b17ec408d1cc82b90b1c82ba3d2386c\"\u003e\u003ccode\u003e551cfd1\u003c/code\u003e\u003c/a\u003e Fix a bug in the refrence UI causing loop for multiperiod content before the ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/278b302e2b584aeb4c0f00880b79e60ddf5c32e1\"\u003e\u003ccode\u003e278b302\u003c/code\u003e\u003c/a\u003e Use responseStart for resourceTiming.responseStart (\u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/5024\"\u003e#5024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/compare/v5.1.1...v5.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isomorphic-dompurify` from 3.8.0 to 3.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kkomelin/isomorphic-dompurify/releases\"\u003eisomorphic-dompurify's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.0: Updated dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edompurify 3.4.5 -\u0026gt; 3.4.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​biomejs/biome\u003c/code\u003e 2.4.15 -\u0026gt; 2.4.16\u003c/li\u003e\n\u003cli\u003evitest 4.1.6 -\u0026gt; 4.1.7\u003c/li\u003e\n\u003cli\u003epackageManager pnpm 11.1.3 -\u0026gt; 11.4.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.0: Updated dependencies\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): bump dompurify from 3.4.3 to 3.4.5 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\u003c/li\u003e\n\u003cli\u003echore: Allowed esbuild and disallowed lefthook for ci.\u003c/li\u003e\n\u003cli\u003echore: Added homepage URL to package.json.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kkomelin/isomorphic-dompurify/compare/3.13.0...3.14.0\"\u003ehttps://github.com/kkomelin/isomorphic-dompurify/compare/3.13.0...3.14.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.13.0: Updated dependencies\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps-dev): bump vitest from 4.1.5 to 4.1.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/kkomelin/isomorphic-dompurify/pull/435\"\u003ekkomelin/isomorphic-dompurify#435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​types/jsdom\u003c/code\u003e from 28.0.1 to 28.0.3 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/kkomelin/isomorphic-dompurify/pull/436\"\u003ekkomelin/isomorphic-dompurify#436\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​biomejs/biome\u003c/code\u003e from 2.4.14 to 2.4.15 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/kkomelin/isomorphic-dompurify/pull/434\"\u003ekkomelin/isomorphic-dompurify#434\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump dompurify from 3.4.2 to 3.4.3 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/kkomelin/isomorphic-dompurify/pull/437\"\u003ekkomelin/isomorphic-dompurify#437\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kkomelin/isomorphic-dompurify/compare/3.12.0...3.13.0\"\u003ehttps://github.com/kkomelin/isomorphic-dompurify/compare/3.12.0...3.13.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.12.0: Updated dependencies\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): bump dompurify from 3.4.1 to 3.4.2 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/kkomelin/isomorphic-dompurify/pull/430\"\u003ekkomelin/isomorphic-dompurify#430\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump jsdom from 29.1.0 to 29.1.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/kkomelin/isomorphic-dompurify/pull/431\"\u003ekkomelin/isomorphic-dompurify#431\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​biomejs/biome\u003c/code\u003e from 2.4.13 to 2.4.14 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/kkomelin/isomorphic-dompurify/pull/432\"\u003ekkomelin/isomorphic-dompurify#432\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kkomelin/isomorphic-dompurify/compare/3.11.0...3.12.0\"\u003ehttps://github.com/kkomelin/isomorphic-dompurify/compare/3.11.0...3.12.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.11.0: Export hook-related TypeScript types\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​biomejs/biome\u003c/code\u003e from 2.4.12 to 2.4.13 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/kkomelin/isomorphic-dompurify/pull/426\"\u003ekkomelin/isomorphic-dompurify#426\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump jsdom from 29.0.2 to 29.1.0 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/kkomelin/isomorphic-dompurify/pull/428\"\u003ekkomelin/isomorphic-dompurify#428\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: export hook-related TypeScript types (\u003ca href=\"https://redirect.github.com/kkomelin/isomorphic-dompurify/issues/427\"\u003e#427\u003c/a\u003e) by \u003ca href=\"https://github.com/kkomelin\"\u003e\u003ccode\u003e@​kkomelin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kkomelin/isomorphic-dompurify/pull/429\"\u003ekkomelin/isomorphic-dompurify#429\u003c/a\u003e (thanks \u003ca href=\"https://github.com/amankumarsaini28\"\u003e\u003ccode\u003e@​amankumarsaini28\u003c/code\u003e\u003c/a\u003e for requesting this update)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kkomelin/isomorphic-dompurify/compare/3.10.0...3.11.0\"\u003ehttps:...\n\n_Description has been truncated_","html_url":"https://github.com/gschiemann/EDUCMS/pull/12","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/gschiemann%2FEDUCMS/issues/12","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12/packages"},{"uuid":"4551014017","node_id":"PR_kwDOREaNsM7gxmvY","number":8,"state":"open","title":"deps(dev)(deps-dev): bump the development-dependencies group with 6 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-29T19:17:32.000Z","updated_at":"2026-05-29T19:18:14.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(dev)(deps-dev): bump","group_name":"development-dependencies","update_count":6,"packages":[{"name":"@jest/globals","old_version":"30.2.0","new_version":"30.4.1","repository_url":"https://github.com/jestjs/jest"},{"name":"@playwright/test","old_version":"1.58.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"eslint-config-next","old_version":"16.1.6","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"jest","old_version":"30.2.0","new_version":"30.4.2","repository_url":"https://github.com/jestjs/jest"},{"name":"jest-environment-jsdom","old_version":"30.2.0","new_version":"30.4.1","repository_url":"https://github.com/jestjs/jest"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development-dependencies group with 6 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@jest/globals](https://github.com/jestjs/jest/tree/HEAD/packages/jest-globals) | `30.2.0` | `30.4.1` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.1` | `1.60.0` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.1.6` | `16.2.6` |\n| [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) | `30.2.0` | `30.4.2` |\n| [jest-environment-jsdom](https://github.com/jestjs/jest/tree/HEAD/packages/jest-environment-jsdom) | `30.2.0` | `30.4.1` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n\nUpdates `@jest/globals` from 30.2.0 to 30.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jestjs/jest/releases\"\u003e@​jest/globals's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev30.4.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.0\u003c/h2\u003e\n\u003cp\u003eBig release! 😀\u003c/p\u003e\n\u003cp\u003eMain feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work \u003ccode\u003erequire(esm)\u003c/code\u003e module is now supported on Node 24.9+ (still requires \u003ccode\u003e--experimental-vm-modules\u003c/code\u003e like before).\u003c/p\u003e\n\u003cp\u003eIn addition we now support fake timers for the recently released \u003ccode\u003eTemporal\u003c/code\u003e API in Node v26.\u003c/p\u003e\n\u003cp\u003eReact 19 is also supported properly in \u003ccode\u003epretty-format\u003c/code\u003e, meaning snapshots of React components now work like they should.\u003c/p\u003e\n\u003cp\u003eDue to all the changes, there might be regressions that snuck in. Please report them!\u003c/p\u003e\n\u003cp\u003eFull list of changes below\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\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/jestjs/jest/blob/main/CHANGELOG.md\"\u003e@​jest/globals's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e30.4.1\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus]\u003c/code\u003e Prevent crash when \u003ccode\u003easyncError\u003c/code\u003e is undefined for non-Error throws (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16003\"\u003e#16003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-jasmine2]\u003c/code\u003e Include \u003ccode\u003eError.cause\u003c/code\u003e in JSON \u003ccode\u003efailureMessages\u003c/code\u003e output (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15967\"\u003e#15967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Fix preset path resolution on Windows when the preset uses subpath \u003ccode\u003eexports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15961\"\u003e#15961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config without a validation warning (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Project config validator now emits \u0026quot;is not supported in an individual project configuration\u0026quot; instead of \u0026quot;probably a typing mistake\u0026quot; for known global-only options (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-environment-node]\u003c/code\u003e Fix \u003ccode\u003e--localstorage-file\u003c/code\u003e warning on Node 25+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16086\"\u003e#16086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters]\u003c/code\u003e Apply global coverage threshold to unmatched pattern files in addition to glob/path thresholds (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16137\"\u003e#16137\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters, jest-runner, jest-runtime, jest-transform]\u003c/code\u003e Fix coverage report not showing correct code coverage when using \u003ccode\u003eprojects\u003c/code\u003e config option (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16140\"\u003e#16140\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Resolve \u003ccode\u003eexpect\u003c/code\u003e and \u003ccode\u003e@jest/expect\u003c/code\u003e from the internal module registry so test-file imports share the same \u003ccode\u003eJestAssertionError\u003c/code\u003e as the global \u003ccode\u003eexpect\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16130\"\u003e#16130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Improve CJS-from-ESM interop: \u003ccode\u003e__esModule\u003c/code\u003e/Babel default unwrap, broader named-export coverage, and shared CJS singleton across importers (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Load \u003ccode\u003e.js\u003c/code\u003e files with ESM syntax but no \u003ccode\u003e\u0026quot;type\u0026quot;:\u0026quot;module\u0026quot;\u003c/code\u003e marker as native ESM (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Extend the \u003ccode\u003e.js\u003c/code\u003e-with-ESM-syntax fallback to \u003ccode\u003erequire()\u003c/code\u003e on Node v24.9+ - falls back to \u003ccode\u003erequire(esm)\u003c/code\u003e when the CJS parser rejects ESM syntax (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16078\"\u003e#16078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix deadlocks and double-evaluation in concurrent ESM and wasm imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\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/jestjs/jest/commit/b3b4a09ed3005369dacc7466d1d2122797283785\"\u003e\u003ccode\u003eb3b4a09\u003c/code\u003e\u003c/a\u003e v30.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/5cbb21e0b3037edb42e503ec1a1ce80efad40c20\"\u003e\u003ccode\u003e5cbb21e\u003c/code\u003e\u003c/a\u003e v30.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/efb59c2e81083f8dc941f20d6d20a3af2dc8d068\"\u003e\u003ccode\u003eefb59c2\u003c/code\u003e\u003c/a\u003e v30.3.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jestjs/jest/commits/v30.4.1/packages/jest-globals\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.58.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-config-next` from 16.1.6 to 16.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/next.js/releases\"\u003eeslint-config-next's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.2.6\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release contains security fixes and backported bug fixes. It does \u003cstrong\u003enot\u003c/strong\u003e include all pending features/changes on canary.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eSecurity Fixes\u003c/h3\u003e\n\u003cp\u003eThe following advisories have been addressed:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eHigh:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-8h8q-6873-q5fj\"\u003eGHSA-8h8q-6873-q5fj: Denial of Service with Server Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-267c-6grr-h53f\"\u003eGHSA-267c-6grr-h53f: Middleware / Proxy bypass in App Router applications via segment-prefetch routes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-26hh-7cqf-hhc6\"\u003eGHSA-26hh-7cqf-hhc6: Middleware / Proxy bypass in App Router applications via segment-prefetch routes - \u003cstrong\u003eIncomplete Fix Follow-Up\u003c/strong\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-mg66-mrh9-m8jx\"\u003eGHSA-mg66-mrh9-m8jx: Denial of Service via connection exhaustion in applications using Cache Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-492v-c6pp-mqqv\"\u003eGHSA-492v-c6pp-mqqv: Middleware / Proxy bypass through dynamic route parameter injection\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-c4j6-fc7j-m34r\"\u003eGHSA-c4j6-fc7j-m34r: Server-side request forgery in applications using WebSocket upgrades\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-36qx-fr4f-26g5\"\u003eGHSA-36qx-fr4f-26g5: Middleware / Proxy bypass in Pages Router applications using i18n\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eModerate:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-ffhc-5mcf-pf4q\"\u003eGHSA-ffhc-5mcf-pf4q: Cross-site scripting in App Router applications using CSP nonces\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-gx5p-jg67-6x7h\"\u003eGHSA-gx5p-jg67-6x7h: Cross-site scripting in beforeInteractive scripts with untrusted input\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-h64f-5h5j-jqjh\"\u003eGHSA-h64f-5h5j-jqjh: Denial of Service in the Image Optimization API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-wfc6-r584-vfw7\"\u003eGHSA-wfc6-r584-vfw7: Cache poisoning in React Server Component responses\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eLow:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-vfv6-92ff-j949\"\u003eGHSA-vfv6-92ff-j949: Cache poisoning via collisions in React Server Component cache-busting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-3g8h-86w9-wvmq\"\u003eGHSA-3g8h-86w9-wvmq: Middleware / Proxy redirects can be cache-poisoned\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: preserve HTTP access fallbacks during prerender recovery (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/92231\"\u003e#92231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix fallback route params case in app-page handler (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/91737\"\u003e#91737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix invalid HTML response for route-level RSC requests in deployment adapter (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/91541\"\u003e#91541\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePatch setHeader for direct route handlers (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93101\"\u003e#93101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude deployment id in \u003ccode\u003ecacheHandlers\u003c/code\u003e keys (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93453\"\u003e#93453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix double-encoding of URL pathname parts in client param parsing (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93491\"\u003e#93491\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev16.2.5\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release contains security fixes and backported bug fixes. It does \u003cstrong\u003enot\u003c/strong\u003e include all pending features/changes on canary.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eSecurity Fixes\u003c/h3\u003e\n\u003cp\u003eThe following advisories have been addressed:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eHigh:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-8h8q-6873-q5fj\"\u003eGHSA-8h8q-6873-q5fj: Denial of Service with Server Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-267c-6grr-h53f\"\u003eGHSA-267c-6grr-h53f: Middleware / Proxy bypass in App Router applications via segment-prefetch routes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-mg66-mrh9-m8jx\"\u003eGHSA-mg66-mrh9-m8jx: Denial of Service via connection exhaustion in applications using Cache Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-492v-c6pp-mqqv\"\u003eGHSA-492v-c6pp-mqqv: Middleware / Proxy bypass through dynamic route parameter injection\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-c4j6-fc7j-m34r\"\u003eGHSA-c4j6-fc7j-m34r: Server-side request forgery in applications using WebSocket upgrades\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/vercel/next.js/commit/ee6e79b1792a4d401ddf2480f40a83549fe8e722\"\u003e\u003ccode\u003eee6e79b\u003c/code\u003e\u003c/a\u003e v16.2.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/766148f9cd48c0e218acafcd0f15defc14871bf4\"\u003e\u003ccode\u003e766148f\u003c/code\u003e\u003c/a\u003e v16.2.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/2275bd8598c88e8652d1271e74bcf972f72f4f38\"\u003e\u003ccode\u003e2275bd8\u003c/code\u003e\u003c/a\u003e v16.2.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/d5f649b2f4affdad1009cb178c1e3b37f4f1ad3f\"\u003e\u003ccode\u003ed5f649b\u003c/code\u003e\u003c/a\u003e v16.2.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/52faae3d94641584e13691238df5be158d0f00fb\"\u003e\u003ccode\u003e52faae3\u003c/code\u003e\u003c/a\u003e v16.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/ed7d2cef246dcb3e2955c018fd8b2027e0ff8eed\"\u003e\u003ccode\u003eed7d2ce\u003c/code\u003e\u003c/a\u003e v16.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/c5c94dffbf084e66b172a9c6ff23d80c24973764\"\u003e\u003ccode\u003ec5c94df\u003c/code\u003e\u003c/a\u003e v16.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/3683192a6bea9011222e9b236f8000b5266f3fe6\"\u003e\u003ccode\u003e3683192\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.104\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/668981482a3f9de97c4c1371e940e0f84972c080\"\u003e\u003ccode\u003e6689814\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.103\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/ad66dbc89b356867c308110dc5365a696c763991\"\u003e\u003ccode\u003ead66dbc\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.102\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/next.js/commits/v16.2.6/packages/eslint-config-next\"\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-config-next since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jest` from 30.2.0 to 30.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jestjs/jest/releases\"\u003ejest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev30.4.2\u003c/h2\u003e\n\u003ch1\u003eFixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix named imports from CJS modules whose \u003ccode\u003emodule.exports\u003c/code\u003e is a function with own-property exports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16150\"\u003e#16150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.1...v30.4.2\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.1...v30.4.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.0\u003c/h2\u003e\n\u003cp\u003eBig release! 😀\u003c/p\u003e\n\u003cp\u003eMain feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work \u003ccode\u003erequire(esm)\u003c/code\u003e module is now supported on Node 24.9+ (still requires \u003ccode\u003e--experimental-vm-modules\u003c/code\u003e like before).\u003c/p\u003e\n\u003cp\u003eIn addition we now support fake timers for the recently released \u003ccode\u003eTemporal\u003c/code\u003e API in Node v26.\u003c/p\u003e\n\u003cp\u003eReact 19 is also supported properly in \u003ccode\u003epretty-format\u003c/code\u003e, meaning snapshots of React components now work like they should.\u003c/p\u003e\n\u003cp\u003eDue to all the changes, there might be regressions that snuck in. Please report them!\u003c/p\u003e\n\u003cp\u003eFull list of changes below\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\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/jestjs/jest/blob/main/CHANGELOG.md\"\u003ejest's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e30.4.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix named imports from CJS modules whose \u003ccode\u003emodule.exports\u003c/code\u003e is a function with own-property exports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16150\"\u003e#16150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.1\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus]\u003c/code\u003e Prevent crash when \u003ccode\u003easyncError\u003c/code\u003e is undefined for non-Error throws (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16003\"\u003e#16003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-jasmine2]\u003c/code\u003e Include \u003ccode\u003eError.cause\u003c/code\u003e in JSON \u003ccode\u003efailureMessages\u003c/code\u003e output (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15967\"\u003e#15967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Fix preset path resolution on Windows when the preset uses subpath \u003ccode\u003eexports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15961\"\u003e#15961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config without a validation warning (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Project config validator now emits \u0026quot;is not supported in an individual project configuration\u0026quot; instead of \u0026quot;probably a typing mistake\u0026quot; for known global-only options (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-environment-node]\u003c/code\u003e Fix \u003ccode\u003e--localstorage-file\u003c/code\u003e warning on Node 25+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16086\"\u003e#16086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters]\u003c/code\u003e Apply global coverage threshold to unmatched pattern files in addition to glob/path thresholds (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16137\"\u003e#16137\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/jestjs/jest/commit/746f2a0f57c56e3bba555280f0587d40f3db95c0\"\u003e\u003ccode\u003e746f2a0\u003c/code\u003e\u003c/a\u003e v30.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/b3b4a09ed3005369dacc7466d1d2122797283785\"\u003e\u003ccode\u003eb3b4a09\u003c/code\u003e\u003c/a\u003e v30.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/5cbb21e0b3037edb42e503ec1a1ce80efad40c20\"\u003e\u003ccode\u003e5cbb21e\u003c/code\u003e\u003c/a\u003e v30.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/db7141a93cc85fab81cf9c25368e1f2b2c312286\"\u003e\u003ccode\u003edb7141a\u003c/code\u003e\u003c/a\u003e fix: allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config (\u003ca href=\"https://github.com/jestjs/jest/tree/HEAD/packages/jest/issues/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/efb59c2e81083f8dc941f20d6d20a3af2dc8d068\"\u003e\u003ccode\u003eefb59c2\u003c/code\u003e\u003c/a\u003e v30.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/96c53d30660e51bf76ed2cd1ecc2334c399ac31c\"\u003e\u003ccode\u003e96c53d3\u003c/code\u003e\u003c/a\u003e feat(jest-config): add \u003ccode\u003edefineConfig\u003c/code\u003e and \u003ccode\u003emergeConfig\u003c/code\u003e functions (\u003ca href=\"https://github.com/jestjs/jest/tree/HEAD/packages/jest/issues/15844\"\u003e#15844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jestjs/jest/commits/v30.4.2/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jest-environment-jsdom` from 30.2.0 to 30.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jestjs/jest/releases\"\u003ejest-environment-jsdom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev30.4.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.0\u003c/h2\u003e\n\u003cp\u003eBig release! 😀\u003c/p\u003e\n\u003cp\u003eMain feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work \u003ccode\u003erequire(esm)\u003c/code\u003e module is now supported on Node 24.9+ (still requires \u003ccode\u003e--experimental-vm-modules\u003c/code\u003e like before).\u003c/p\u003e\n\u003cp\u003eIn addition we now support fake timers for the recently released \u003ccode\u003eTemporal\u003c/code\u003e API in Node v26.\u003c/p\u003e\n\u003cp\u003eReact 19 is also supported properly in \u003ccode\u003epretty-format\u003c/code\u003e, meaning snapshots of React components now work like they should.\u003c/p\u003e\n\u003cp\u003eDue to all the changes, there might be regressions that snuck in. Please report them!\u003c/p\u003e\n\u003cp\u003eFull list of changes below\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\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/jestjs/jest/blob/main/CHANGELOG.md\"\u003ejest-environment-jsdom's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e30.4.1\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus]\u003c/code\u003e Prevent crash when \u003ccode\u003easyncError\u003c/code\u003e is undefined for non-Error throws (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16003\"\u003e#16003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-jasmine2]\u003c/code\u003e Include \u003ccode\u003eError.cause\u003c/code\u003e in JSON \u003ccode\u003efailureMessages\u003c/code\u003e output (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15967\"\u003e#15967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Fix preset path resolution on Windows when the preset uses subpath \u003ccode\u003eexports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15961\"\u003e#15961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config without a validation warning (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Project config validator now emits \u0026quot;is not supported in an individual project configuration\u0026quot; instead of \u0026quot;probably a typing mistake\u0026quot; for known global-only options (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-environment-node]\u003c/code\u003e Fix \u003ccode\u003e--localstorage-file\u003c/code\u003e warning on Node 25+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16086\"\u003e#16086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters]\u003c/code\u003e Apply global coverage threshold to unmatched pattern files in addition to glob/path thresholds (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16137\"\u003e#16137\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters, jest-runner, jest-runtime, jest-transform]\u003c/code\u003e Fix coverage report not showing correct code coverage when using \u003ccode\u003eprojects\u003c/code\u003e config option (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16140\"\u003e#16140\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Resolve \u003ccode\u003eexpect\u003c/code\u003e and \u003ccode\u003e@jest/expect\u003c/code\u003e from the internal module registry so test-file imports share the same \u003ccode\u003eJestAssertionError\u003c/code\u003e as the global \u003ccode\u003eexpect\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16130\"\u003e#16130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Improve CJS-from-ESM interop: \u003ccode\u003e__esModule\u003c/code\u003e/Babel default unwrap, broader named-export coverage, and shared CJS singleton across importers (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Load \u003ccode\u003e.js\u003c/code\u003e files with ESM syntax but no \u003ccode\u003e\u0026quot;type\u0026quot;:\u0026quot;module\u0026quot;\u003c/code\u003e marker as native ESM (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Extend the \u003ccode\u003e.js\u003c/code\u003e-with-ESM-syntax fallback to \u003ccode\u003erequire()\u003c/code\u003e on Node v24.9+ - falls back to \u003ccode\u003erequire(esm)\u003c/code\u003e when the CJS parser rejects ESM syntax (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16078\"\u003e#16078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix deadlocks and double-evaluation in concurrent ESM and wasm imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\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/jestjs/jest/commit/b3b4a09ed3005369dacc7466d1d2122797283785\"\u003e\u003ccode\u003eb3b4a09\u003c/code\u003e\u003c/a\u003e v30.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/5cbb21e0b3037edb42e503ec1a1ce80efad40c20\"\u003e\u003ccode\u003e5cbb21e\u003c/code\u003e\u003c/a\u003e v30.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/efb59c2e81083f8dc941f20d6d20a3af2dc8d068\"\u003e\u003ccode\u003eefb59c2\u003c/code\u003e\u003c/a\u003e v30.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/b5b0220a824d29a443d2af4a56ce227f94478052\"\u003e\u003ccode\u003eb5b0220\u003c/code\u003e\u003c/a\u003e Remove unused dependencies from jest-environment-jsdom (\u003ca href=\"https://github.com/jestjs/jest/tree/HEAD/packages/jest-environment-jsdom/issues/15928\"\u003e#15928\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jestjs/jest/commits/v30.4.1/packages/jest-environment-jsdom\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prettier` from 3.8.1 to 3.8.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/prettier/releases\"\u003eprettier's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.8.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSCSS: Prevent trailing comma in \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18471\"\u003eprettier/prettier#18471\u003c/a\u003e by \u003ca href=\"https://github.com/kovsu\"\u003e\u003ccode\u003e@​kovsu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://github.com/prettier/prettier/blob/3.8.3/CHANGELOG.md#383\"\u003eChangelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.8.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Angular v21.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://github.com/prettier/prettier/blob/main/CHANGELOG.md#382\"\u003eChangelog\u003c/a\u003e\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/prettier/prettier/blob/main/CHANGELOG.md\"\u003eprettier's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.8.3\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.8.2...3.8.3\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eSCSS: Prevent trailing comma in \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18471\"\u003e#18471\u003c/a\u003e by \u003ca href=\"https://github.com/kovsu\"\u003e\u003ccode\u003e@​kovsu\u003c/code\u003e\u003c/a\u003e)\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"scss\"\u003e\u003ccode\u003e// Input\n$value: if(sass(false): 1; else: -1);\n\u003cp\u003e// Prettier 3.8.2\n$value: if(\nsass(false): 1; else: -1,\n);\u003c/p\u003e\n\u003cp\u003e// Prettier 3.8.3\n$value: if(sass(false): 1; else: -1);\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch1\u003e3.8.2\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.8.1...3.8.2\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eAngular: Support Angular v21.2 (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18722\"\u003e#18722\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prettier/prettier/pull/19034\"\u003e#19034\u003c/a\u003e by \u003ca href=\"https://github.com/fisker\"\u003e\u003ccode\u003e@​fisker\u003c/code\u003e\u003c/a\u003e)\u003c/h4\u003e\n\u003cp\u003eExhaustive typechecking with \u003ccode\u003e@default never;\u003c/code\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;!-- Input --\u0026gt;\n@switch (foo) {\n  @case (1) {}\n  @default never;\n}\n\u003cp\u003e\u0026lt;!-- Prettier 3.8.1 --\u0026gt;\nSyntaxError: Incomplete block \u0026quot;default never\u0026quot;. If you meant to write the @ character, you should use the \u0026quot;\u0026amp;\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/64\"\u003e#64\u003c/a\u003e;\u0026quot; HTML entity instead. (3:3)\u003c/p\u003e\n\u003cp\u003e\u0026lt;!-- Prettier 3.8.2 --\u0026gt;\n\u003ca href=\"https://github.com/switch\"\u003e\u003ccode\u003e@​switch\u003c/code\u003e\u003c/a\u003e (foo) {\n\u003ca href=\"https://github.com/case\"\u003e\u003ccode\u003e@​case\u003c/code\u003e\u003c/a\u003e (1) {}\n\u003ca href=\"https://github.com/default\"\u003e\u003ccode\u003e@​default\u003c/code\u003e\u003c/a\u003e never;\n}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003earrow function\u003c/code\u003e and \u003ccode\u003einstanceof\u003c/code\u003e expressions.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\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/prettier/prettier/commit/d7108a79ec745c04292aabf22c4c1adbd690b191\"\u003e\u003ccode\u003ed7108a7\u003c/code\u003e\u003c/a\u003e Release 3.8.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/177f90898170d363ef64fde663e4d13170688bfe\"\u003e\u003ccode\u003e177f908\u003c/code\u003e\u003c/a\u003e Prevent trailing comma in SCSS \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18471\"\u003e#18471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/1cd40668c3d6f2f4cf9d87bbc9096d92361b2606\"\u003e\u003ccode\u003e1cd4066\u003c/code\u003e\u003c/a\u003e Release \u003ccode\u003e@​prettier/plugin-oxc\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/a8700e245038cd8cc0cf28ef06ffedbcb3fc2dfc\"\u003e\u003ccode\u003ea8700e2\u003c/code\u003e\u003c/a\u003e Update oxc-parser to v0.125.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/752157c78eca6f0a30e5d5cb513b682c5ecfa01e\"\u003e\u003ccode\u003e752157c\u003c/code\u003e\u003c/a\u003e Fix tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/053fd418e180b12fa2014260212fae831f5fc5ec\"\u003e\u003ccode\u003e053fd41\u003c/code\u003e\u003c/a\u003e Bump Prettier dependency to 3.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/904c6365ec46726fd0e21021c52ae934b7e5abc6\"\u003e\u003ccode\u003e904c636\u003c/code\u003e\u003c/a\u003e Clean changelog_unreleased\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/dc1f7fcc508d116cbf1644d69a1f0eb93e40d4a4\"\u003e\u003ccode\u003edc1f7fc\u003c/code\u003e\u003c/a\u003e Update dependents count\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/b31557cf331a02acf83e7e29d1001b070189a0d9\"\u003e\u003ccode\u003eb31557c\u003c/code\u003e\u003c/a\u003e Release 3.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/96bbaeda0525bf758e464aed2f939d739a85c315\"\u003e\u003ccode\u003e96bbaed\u003c/code\u003e\u003c/a\u003e Support Angular v21.2 (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18722\"\u003e#18722\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prettier/prettier/compare/3.8.1...3.8.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/markahope-aag/aviary-roi-calculators/pull/8","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/markahope-aag%2Faviary-roi-calculators/issues/8","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8/packages"},{"uuid":"4550968684","node_id":"PR_kwDOP3mI_87gxdD6","number":132,"state":"open","title":"chore(deps-dev)(deps-dev): bump the development-dependencies group across 1 directory with 12 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-29T19:09:20.000Z","updated_at":"2026-05-29T19:09:22.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev)(deps-dev): bump","group_name":"development-dependencies","update_count":12,"packages":[{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tailwindcss/postcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/vite","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@types/node","old_version":"25.3.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"autoprefixer","old_version":"10.4.27","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"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":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"sass-embedded","old_version":"1.97.3","new_version":"1.100.0","repository_url":"https://github.com/sass/embedded-host-node"},{"name":"tailwindcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"typescript-eslint","old_version":"8.56.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development-dependencies group with 12 updates in the /frontend directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.1` | `4.3.0` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.1` | `4.3.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.3.3` | `25.9.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.27` | `10.5.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| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [sass-embedded](https://github.com/sass/embedded-host-node) | `1.97.3` | `1.100.0` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.1` | `4.3.0` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.1` | `8.59.4` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n\n\nUpdates `@playwright/test` from 1.58.2 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/postcss` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/postcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/postcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/12eb5ae7b6026ff64c04f889b2221418d772da72\"\u003e\u003ccode\u003e12eb5ae\u003c/code\u003e\u003c/a\u003e Cleanup noisy test output (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4255671c5f792c42808ecd6b2dec27c16e3c559e\"\u003e\u003ccode\u003e4255671\u003c/code\u003e\u003c/a\u003e Improve snapshot tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52f94c74bb491e9c3641ce322a0ef90fb3c45de6\"\u003e\u003ccode\u003e52f94c7\u003c/code\u003e\u003c/a\u003e Improve codebase quality (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19999\"\u003e#19999\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/bfb5732b0b948d89c6803cb537bca168ec8e0a46\"\u003e\u003ccode\u003ebfb5732\u003c/code\u003e\u003c/a\u003e Fall back to the plugin \u003ccode\u003ebase\u003c/code\u003e when PostCSS has no \u003ccode\u003efrom\u003c/code\u003e option (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/3a890c35727fe0630c59b72dbec799d02e3c4800\"\u003e\u003ccode\u003e3a890c3\u003c/code\u003e\u003c/a\u003e Bump dependencies (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-postcss\"\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 \u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/vite` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/vite's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/vite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/db27049caaae08978995f25b61f8336f543a4640\"\u003e\u003ccode\u003edb27049\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​tailwindcss/vite\u003c/code\u003e): include \u003ca href=\"https://github.com/variant\"\u003e\u003ccode\u003e@​variant\u003c/code\u003e\u003c/a\u003e in feature detection (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/5a799900d4b43ca4902398a38c6f0a5b37a98ed9\"\u003e\u003ccode\u003e5a79990\u003c/code\u003e\u003c/a\u003e Always resolve relative files, relative to the current .css file (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/f3fdda2a5cb9de50c897c79003aa58182cd9269b\"\u003e\u003ccode\u003ef3fdda2\u003c/code\u003e\u003c/a\u003e fix(vite): avoid resolving JS plugins to browser CSS entries (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/5cb1efdf416a6d37012d31cc1306c41cb35bbdc1\"\u003e\u003ccode\u003e5cb1efd\u003c/code\u003e\u003c/a\u003e fix(vite): resolve tsconfig paths in CSS and JS resolvers (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19803\"\u003e#19803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d596b0c43d36ad5099c983930fb155e089cbc291\"\u003e\u003ccode\u003ed596b0c\u003c/code\u003e\u003c/a\u003e 4.2.2 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19821\"\u003e#19821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-vite\"\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 \u003ccode\u003e@​tailwindcss/vite\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@types/node` from 25.3.3 to 25.9.1\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/node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `autoprefixer` from 10.4.27 to 10.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/postcss/autoprefixer/releases\"\u003eautoprefixer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.5.0 “Each Endeavouring, All Achieving”\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003emask-position-x\u003c/code\u003e and \u003ccode\u003emask-position-y\u003c/code\u003e support (by \u003ca href=\"https://github.com/toporek\"\u003e\u003ccode\u003e@​toporek\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/postcss/autoprefixer/blob/main/CHANGELOG.md\"\u003eautoprefixer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.5.0 “Each Endeavouring, All Achieving”\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003emask-position-x\u003c/code\u003e and \u003ccode\u003emask-position-y\u003c/code\u003e support (by \u003ca href=\"https://github.com/toporek\"\u003e\u003ccode\u003e@​toporek\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/postcss/autoprefixer/commit/faf456a4be572dbcb60cbe5d76a8927e23809ef5\"\u003e\u003ccode\u003efaf456a\u003c/code\u003e\u003c/a\u003e Release 10.5 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/postcss/autoprefixer/commit/b841fc53575a2e8c3dd8d04b0bc5998ee11e7587\"\u003e\u003ccode\u003eb841fc5\u003c/code\u003e\u003c/a\u003e Update dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/postcss/autoprefixer/commit/47d6e68b27009f7cb60513172f765783b55bb000\"\u003e\u003ccode\u003e47d6e68\u003c/code\u003e\u003c/a\u003e Update email\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/postcss/autoprefixer/commit/45cfc0827012fda39b809f1654136e1d5ab7ab25\"\u003e\u003ccode\u003e45cfc08\u003c/code\u003e\u003c/a\u003e Replace ESLint and Prettier to oxlint and oxfmt\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/postcss/autoprefixer/commit/7e3ec7db7274289ccc385fb788bc48f14a4e1dd8\"\u003e\u003ccode\u003e7e3ec7d\u003c/code\u003e\u003c/a\u003e Add prefixing support for mask-position-x and mask-position-y (\u003ca href=\"https://redirect.github.com/postcss/autoprefixer/issues/1548\"\u003e#1548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/postcss/autoprefixer/compare/10.4.27...10.5.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 `prettier` from 3.8.1 to 3.8.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/prettier/releases\"\u003eprettier's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.8.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSCSS: Prevent trailing comma in \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18471\"\u003eprettier/prettier#18471\u003c/a\u003e by \u003ca href=\"https://github.com/kovsu\"\u003e\u003ccode\u003e@​kovsu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://github.com/prettier/prettier/blob/3.8.3/CHANGELOG.md#383\"\u003eChangelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.8.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Angular v21.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://github.com/prettier/prettier/blob/main/CHANGELOG.md#382\"\u003eChangelog\u003c/a\u003e\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/prettier/prettier/blob/main/CHANGELOG.md\"\u003eprettier's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.8.3\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.8.2...3.8.3\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eSCSS: Prevent trailing comma in \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18471\"\u003e#18471\u003c/a\u003e by \u003ca href=\"https://github.com/kovsu\"\u003e\u003ccode\u003e@​kovsu\u003c/code\u003e\u003c/a\u003e)\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"scss\"\u003e\u003ccode\u003e// Input\n$value: if(sass(false): 1; else: -1);\n\u003cp\u003e// Prettier 3.8.2\n$value: if(\nsass(false): 1; else: -1,\n);\u003c/p\u003e\n\u003cp\u003e// Prettier 3.8.3\n$value: if(sass(false): 1; else: -1);\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch1\u003e3.8.2\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.8.1...3.8.2\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eAngular: Support Angular v21.2 (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18722\"\u003e#18722\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prettier/prettier/pull/19034\"\u003e#19034\u003c/a\u003e by \u003ca href=\"https://github.com/fisker\"\u003e\u003ccode\u003e@​fisker\u003c/code\u003e\u003c/a\u003e)\u003c/h4\u003e\n\u003cp\u003eExhaustive typechecking with \u003ccode\u003e@default never;\u003c/code\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;!-- Input --\u0026gt;\n@switch (foo) {\n  @case (1) {}\n  @default never;\n}\n\u003cp\u003e\u0026lt;!-- Prettier 3.8.1 --\u0026gt;\nSyntaxError: Incomplete block \u0026quot;default never\u0026quot;. If you meant to write the @ character, you should use the \u0026quot;\u0026amp;\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/64\"\u003e#64\u003c/a\u003e;\u0026quot; HTML entity instead. (3:3)\u003c/p\u003e\n\u003cp\u003e\u0026lt;!-- Prettier 3.8.2 --\u0026gt;\n\u003ca href=\"https://github.com/switch\"\u003e\u003ccode\u003e@​switch\u003c/code\u003e\u003c/a\u003e (foo) {\n\u003ca href=\"https://github.com/case\"\u003e\u003ccode\u003e@​case\u003c/code\u003e\u003c/a\u003e (1) {}\n\u003ca href=\"https://github.com/default\"\u003e\u003ccode\u003e@​default\u003c/code\u003e\u003c/a\u003e never;\n}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003earrow function\u003c/code\u003e and \u003ccode\u003einstanceof\u003c/code\u003e expressions.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\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/prettier/prettier/commit/d7108a79ec745c04292aabf22c4c1adbd690b191\"\u003e\u003ccode\u003ed7108a7\u003c/code\u003e\u003c/a\u003e Release 3.8.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/177f90898170d363ef64fde663e4d13170688bfe\"\u003e\u003ccode\u003e177f908\u003c/code\u003e\u003c/a\u003e Prevent trailing comma in SCSS \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18471\"\u003e#18471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/1cd40668c3d6f2f4cf9d87bbc9096d92361b2606\"\u003e\u003ccode\u003e1cd4066\u003c/code\u003e\u003c/a\u003e Release \u003ccode\u003e@​prettier/plugin-oxc\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/a8700e245038cd8cc0cf28ef06ffedbcb3fc2dfc\"\u003e\u003ccode\u003ea8700e2\u003c/code\u003e\u003c/a\u003e Update oxc-parser to v0.125.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/752157c78eca6f0a30e5d5cb513b682c5ecfa01e\"\u003e\u003ccode\u003e752157c\u003c/code\u003e\u003c/a\u003e Fix tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/053fd418e180b12fa2014260212fae831f5fc5ec\"\u003e\u003ccode\u003e053fd41\u003c/code\u003e\u003c/a\u003e Bump Prettier dependency to 3.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/904c6365ec46726fd0e21021c52ae934b7e5abc6\"\u003e\u003ccode\u003e904c636\u003c/code\u003e\u003c/a\u003e Clean changelog_unreleased\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/dc1f7fcc508d116cbf1644d69a1f0eb93e40d4a4\"\u003e\u003ccode\u003edc1f7fc\u003c/code\u003e\u003c/a\u003e Update dependents count\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/b31557cf331a02acf83e7e29d1001b070189a0d9\"\u003e\u003ccode\u003eb31557c\u003c/code\u003e\u003c/a\u003e Release 3.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/96bbaeda0525bf758e464aed2f939d739a85c315\"\u003e\u003ccode\u003e96bbaed\u003c/code\u003e\u003c/a\u003e Support Angular v21.2 (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18722\"\u003e#18722\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prettier/prettier/compare/3.8.1...3.8.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sass-embedded` from 1.97.3 to 1.100.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md\"\u003esass-embedded's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.100.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eWriting two compound selectors adjacent to one another without any whitespace\nbetween them, such as \u003ccode\u003e[class]a\u003c/code\u003e, is now deprecated. This was always an error\nin CSS and Sass only supported it by mistake.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://sass-lang.com/d/adjacent-compounds\"\u003ethe Sass website\u003c/a\u003e for\ndetails.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.99.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for parent selectors (\u003ccode\u003e\u0026amp;\u003c/code\u003e) at the root of the document. These are\nemitted as-is in the CSS output, where they're interpreted as \u003ca href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors/Nesting_selector#using_outside_nested_rule\"\u003ethe scoping\nroot\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUser-defined functions named \u003ccode\u003ecalc\u003c/code\u003e or \u003ccode\u003eclamp\u003c/code\u003e are no longer forbidden. If\nsuch a function exists without a namespace in the current module, it will be\nused instead of the built-in \u003ccode\u003ecalc()\u003c/code\u003e or \u003ccode\u003eclamp()\u003c/code\u003e function.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUser-defined functions whose names begin with \u003ccode\u003e-\u003c/code\u003e and end with \u003ccode\u003e-expression\u003c/code\u003e,\n\u003ccode\u003e-url\u003c/code\u003e, \u003ccode\u003e-and\u003c/code\u003e, \u003ccode\u003e-or\u003c/code\u003e, or \u003ccode\u003e-not\u003c/code\u003e are no longer forbidden. These were\noriginally intended to match vendor prefixes, but in practice no vendor\nprefixes for these functions ever exis...\n\n_Description has been truncated_","html_url":"https://github.com/b310-digital/groupwriter/pull/132","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/b310-digital%2Fgroupwriter/issues/132","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/132/packages"},{"uuid":"4550247728","node_id":"PR_kwDOP3Td2M7gvGDz","number":304,"state":"closed","title":"chore(deps-dev): bump the qa-tooling group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","npm"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-05-29T22:33:39.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T17:08:50.000Z","updated_at":"2026-05-29T22:33:39.000Z","time_to_close":19489,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"qa-tooling","update_count":2,"packages":[{"name":"@cucumber/cucumber","old_version":"11.3.0","new_version":"12.9.0","repository_url":"https://github.com/cucumber/cucumber-js"},{"name":"@playwright/test","old_version":"1.56.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"}],"path":null,"ecosystem":"npm"},"body":"Bumps the qa-tooling group with 2 updates in the / directory: [@cucumber/cucumber](https://github.com/cucumber/cucumber-js) and [@playwright/test](https://github.com/microsoft/playwright).\n\nUpdates `@cucumber/cucumber` from 11.3.0 to 12.9.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cucumber/cucumber-js/releases\"\u003e@​cucumber/cucumber's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev12.9.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEmit new \u003ccode\u003epublish:url\u003c/code\u003e event for plugins (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2808\"\u003e#2808\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.8.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle thrown strings correctly (partial backport from \u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2708\"\u003e#2708\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude assertion info in stack trace (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2803\"\u003e#2803\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.8.2\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eVarious dependency updates\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.8.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResolve dependency issue with \u003ccode\u003ejunit-xml-formatter\u003c/code\u003e and \u003ccode\u003equery\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/cucumber/junit-xml-formatter/pull/143\"\u003ejunit-xml-formatter#143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.8.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport custom externalising option (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2780\"\u003e#2780\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.7.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn about merged paths from config and CLI (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2759\"\u003e#2759\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle ESM when building source references (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2740\"\u003e#2740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix error type resolution (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2744\"\u003e#2744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure that environment variables reach child processes in parallel mode (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2752\"\u003e#2752\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.6.0\u003c/h2\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate colorsEnabled format option in favour of environment variables (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2729\"\u003e#2729\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.5.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow external plugins (see \u003ca href=\"https://github.com/cucumber/cucumber-js/blob/HEAD/docs/plugins.md\"\u003edocumentation\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2715\"\u003e#2715\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.4.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow loading config files in TypeScript format (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2709\"\u003e#2709\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompress report content with gzip before publishing (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2687\"\u003e#2687\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Node.js 25.x (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2704\"\u003e#2704\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport named BeforeAll/AfterAll hooks (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2661\"\u003e#2661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmit messages for test run hooks (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2644\"\u003e#2644\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/cucumber/cucumber-js/blob/main/CHANGELOG.md\"\u003e@​cucumber/cucumber's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[12.9.0] - 2026-05-15\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEmit new \u003ccode\u003epublish:url\u003c/code\u003e event for plugins (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2808\"\u003e#2808\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.8.3] - 2026-05-09\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle thrown strings correctly (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2708\"\u003e#2708\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude assertion info in stack trace (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2803\"\u003e#2803\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.8.2] - 2026-04-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eVarious dependency updates\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.8.1] - 2026-04-14\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResolve dependency issue with \u003ccode\u003ejunit-xml-formatter\u003c/code\u003e and \u003ccode\u003equery\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/cucumber/junit-xml-formatter/pull/143\"\u003ejunit-xml-formatter#143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.8.0] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport custom externalising option (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2780\"\u003e#2780\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.7.0] - 2026-02-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn about merged paths from config and CLI (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2759\"\u003e#2759\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle ESM when building source references (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2740\"\u003e#2740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix error type resolution (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2744\"\u003e#2744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure that environment variables reach child processes in parallel mode (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2752\"\u003e#2752\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.6.0] - 2026-01-22\u003c/h2\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate colorsEnabled format option in favour of environment variables (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2729\"\u003e#2729\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.5.0] - 2025-12-26\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow external plugins (see \u003ca href=\"https://github.com/cucumber/cucumber-js/blob/main/docs/plugins.md\"\u003edocumentation\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2715\"\u003e#2715\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.4.0] - 2025-12-13\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow loading config files in TypeScript format (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2709\"\u003e#2709\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompress report content with gzip before publishing (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2687\"\u003e#2687\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.3.0] - 2025-12-01\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Node.js 25.x (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2704\"\u003e#2704\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport named BeforeAll/AfterAll hooks (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2661\"\u003e#2661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmit messages for test run hooks (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2644\"\u003e#2644\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/cucumber/cucumber-js/commit/a09aea30597448b31b6acf447984f9bba2753c94\"\u003e\u003ccode\u003ea09aea3\u003c/code\u003e\u003c/a\u003e Prepare release v12.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/a5207d900d30a0e2fee436b64f17617ecd7a5242\"\u003e\u003ccode\u003ea5207d9\u003c/code\u003e\u003c/a\u003e Rework integration with Cucumber Reports (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/issues/2808\"\u003e#2808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/e7b78d5b1b93bd08a94bd800ed985491b675a473\"\u003e\u003ccode\u003ee7b78d5\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/995df9a65511dfc2cf463581d431788b5c9727f6\"\u003e\u003ccode\u003e995df9a\u003c/code\u003e\u003c/a\u003e Prepare release v12.8.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/7a762cd5b971bbf07b3d28e7bc194533bb024e34\"\u003e\u003ccode\u003e7a762cd\u003c/code\u003e\u003c/a\u003e Include assertion info in stack trace, handle thrown strings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/6b60ec22ba535949f98d74de067116e53eb1a1e8\"\u003e\u003ccode\u003e6b60ec2\u003c/code\u003e\u003c/a\u003e Prepare release v12.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/4849a966214a9b133db17a3c6f010e6c82761b3a\"\u003e\u003ccode\u003e4849a96\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/1c7b05d9c62c129f33b03994d5cd48376c1c29d1\"\u003e\u003ccode\u003e1c7b05d\u003c/code\u003e\u003c/a\u003e Correct advice for ESM with tsx (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/issues/2796\"\u003e#2796\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/b382bc6802ccf6a9281c118b64d6a4477c455948\"\u003e\u003ccode\u003eb382bc6\u003c/code\u003e\u003c/a\u003e Bump brace-expansion (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/issues/2795\"\u003e#2795\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/68654946fa43c15ae34da4c63edaa126705ed5a1\"\u003e\u003ccode\u003e6865494\u003c/code\u003e\u003c/a\u003e Update dependency fs-extra to v11 (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/issues/2791\"\u003e#2791\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/cucumber/cucumber-js/compare/v11.3.0...v12.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 \u003ccode\u003e@​cucumber/cucumber\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.56.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.56.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/kevinrapley/ResearchOps/pull/304","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinrapley%2FResearchOps/issues/304","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/304/packages"},{"uuid":"4545849932","node_id":"PR_kwDOLzxzKM7gglkO","number":348,"state":"closed","title":"chore(deps): bump the dependencies group across 1 directory with 46 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-30T20:19:09.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T05:12:36.000Z","updated_at":"2026-05-30T20:19:11.000Z","time_to_close":140793,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"dependencies","update_count":46,"packages":[{"name":"@codemirror/autocomplete","old_version":"6.20.1","new_version":"6.20.2","repository_url":"https://github.com/codemirror/autocomplete"},{"name":"@codemirror/lint","old_version":"6.9.5","new_version":"6.9.6","repository_url":"https://github.com/codemirror/lint"},{"name":"@codemirror/search","old_version":"6.6.0","new_version":"6.7.0","repository_url":"https://github.com/codemirror/search"},{"name":"@fortawesome/react-fontawesome","old_version":"3.3.0","new_version":"3.3.1","repository_url":"https://github.com/FortAwesome/react-fontawesome"},{"name":"@lingui/core","old_version":"5.9.3","new_version":"6.1.0","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/react","old_version":"5.9.3","new_version":"6.1.0","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@sentry/react","old_version":"10.46.0","new_version":"10.53.1","repository_url":"https://github.com/getsentry/sentry-javascript"},{"name":"@tabler/icons-react","old_version":"3.40.0","new_version":"3.44.0","repository_url":"https://github.com/tabler/tabler-icons"},{"name":"@tanstack/react-query","old_version":"5.95.2","new_version":"5.100.11","repository_url":"https://github.com/TanStack/query"},{"name":"@uiw/codemirror-theme-vscode","old_version":"4.25.9","new_version":"4.25.10","repository_url":"https://github.com/uiwjs/react-codemirror"},{"name":"@uiw/react-codemirror","old_version":"4.25.9","new_version":"4.25.10","repository_url":"https://github.com/uiwjs/react-codemirror"},{"name":"@vanilla-extract/css","old_version":"1.20.0","new_version":"1.20.1","repository_url":"https://github.com/vanilla-extract-css/vanilla-extract"},{"name":"axios","old_version":"1.15.2","new_version":"1.16.1","repository_url":"https://github.com/axios/axios"},{"name":"dompurify","old_version":"3.4.0","new_version":"3.4.5","repository_url":"https://github.com/cure53/DOMPurify"},{"name":"easymde","old_version":"2.20.0","new_version":"2.21.0","repository_url":"https://github.com/Ionaru/easy-markdown-editor"},{"name":"fuse.js","old_version":"7.1.0","new_version":"7.3.0","repository_url":"https://github.com/krisk/Fuse"},{"name":"mantine-datatable","old_version":"9.2.0","new_version":"9.2.2","repository_url":"https://github.com/icflorescu/mantine-datatable"},{"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":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-grid-layout","old_version":"1.4.4","new_version":"2.2.3","repository_url":"https://github.com/STRML/react-grid-layout"},{"name":"@types/react-grid-layout","old_version":"1.3.6","new_version":"2.1.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"react-hook-form","old_version":"7.72.0","new_version":"7.76.0","repository_url":"https://github.com/react-hook-form/react-hook-form"},{"name":"react-is","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-router-dom","old_version":"6.30.3","new_version":"7.15.1","repository_url":"https://github.com/remix-run/react-router"},{"name":"react-window","old_version":"1.8.11","new_version":"2.2.7","repository_url":"https://github.com/bvaughn/react-window"},{"name":"@types/react-window","old_version":"1.8.8","new_version":"2.0.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"styled-components","old_version":"6.3.12","new_version":"6.4.2","repository_url":"https://github.com/styled-components/styled-components"},{"name":"undici","old_version":"6.24.1","new_version":"8.3.0","repository_url":"https://github.com/nodejs/undici"},{"name":"zustand","old_version":"5.0.12","new_version":"5.0.13","repository_url":"https://github.com/pmndrs/zustand"},{"name":"@codecov/vite-plugin","old_version":"1.9.1","new_version":"2.0.1"},{"name":"@lingui/babel-plugin-lingui-macro","old_version":"5.9.3","new_version":"6.1.0","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/cli","old_version":"5.9.3","new_version":"6.1.0","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/macro","old_version":"5.9.3","new_version":"5.9.5","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@types/node","old_version":"25.5.0","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vanilla-extract/vite-plugin","old_version":"5.2.1","new_version":"5.2.2","repository_url":"https://github.com/vanilla-extract-css/vanilla-extract"},{"name":"@vitejs/plugin-react","old_version":"5.2.0","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"otpauth","old_version":"9.5.0","new_version":"9.5.1","repository_url":"https://github.com/hectorm/otpauth"},{"name":"rollup","old_version":"4.60.0","new_version":"4.60.4","repository_url":"https://github.com/rollup/rollup"},{"name":"rollup-plugin-license","old_version":"3.7.0","new_version":"3.7.1","repository_url":"https://github.com/mjeanroy/rollup-plugin-license"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"vite","old_version":"6.4.2","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vite-plugin-dts","old_version":"4.5.4","new_version":"5.0.1","repository_url":"https://github.com/qmhc/unplugin-dts"},{"name":"vite-plugin-istanbul","old_version":"8.0.0","new_version":"9.0.0","repository_url":"https://github.com/iFaxity/vite-plugin-istanbul"}],"path":null,"ecosystem":"npm"},"body":"Bumps the dependencies group with 45 updates in the /src/frontend directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@codemirror/autocomplete](https://github.com/codemirror/autocomplete) | `6.20.1` | `6.20.2` |\n| [@codemirror/lint](https://github.com/codemirror/lint) | `6.9.5` | `6.9.6` |\n| [@codemirror/search](https://github.com/codemirror/search) | `6.6.0` | `6.7.0` |\n| [@fortawesome/react-fontawesome](https://github.com/FortAwesome/react-fontawesome) | `3.3.0` | `3.3.1` |\n| [@lingui/core](https://github.com/lingui/js-lingui/tree/HEAD/packages/core) | `5.9.3` | `6.1.0` |\n| [@lingui/react](https://github.com/lingui/js-lingui/tree/HEAD/packages/react) | `5.9.3` | `6.1.0` |\n| [@sentry/react](https://github.com/getsentry/sentry-javascript) | `10.46.0` | `10.53.1` |\n| [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) | `3.40.0` | `3.44.0` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.95.2` | `5.100.11` |\n| [@uiw/codemirror-theme-vscode](https://github.com/uiwjs/react-codemirror) | `4.25.9` | `4.25.10` |\n| [@uiw/react-codemirror](https://github.com/uiwjs/react-codemirror) | `4.25.9` | `4.25.10` |\n| [@vanilla-extract/css](https://github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/css) | `1.20.0` | `1.20.1` |\n| [axios](https://github.com/axios/axios) | `1.15.2` | `1.16.1` |\n| [dompurify](https://github.com/cure53/DOMPurify) | `3.4.0` | `3.4.5` |\n| [easymde](https://github.com/Ionaru/easy-markdown-editor) | `2.20.0` | `2.21.0` |\n| [fuse.js](https://github.com/krisk/Fuse) | `7.1.0` | `7.3.0` |\n| [mantine-datatable](https://github.com/icflorescu/mantine-datatable) | `9.2.0` | `9.2.2` |\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| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-grid-layout](https://github.com/STRML/react-grid-layout) | `1.4.4` | `2.2.3` |\n| [@types/react-grid-layout](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-grid-layout) | `1.3.6` | `2.1.0` |\n| [react-hook-form](https://github.com/react-hook-form/react-hook-form) | `7.72.0` | `7.76.0` |\n| [react-is](https://github.com/facebook/react/tree/HEAD/packages/react-is) | `19.2.4` | `19.2.6` |\n| [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) | `6.30.3` | `7.15.1` |\n| [react-window](https://github.com/bvaughn/react-window) | `1.8.11` | `2.2.7` |\n| [@types/react-window](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-window) | `1.8.8` | `2.0.0` |\n| [styled-components](https://github.com/styled-components/styled-components) | `6.3.12` | `6.4.2` |\n| [undici](https://github.com/nodejs/undici) | `6.24.1` | `8.3.0` |\n| [zustand](https://github.com/pmndrs/zustand) | `5.0.12` | `5.0.13` |\n| @codecov/vite-plugin | `1.9.1` | `2.0.1` |\n| [@lingui/babel-plugin-lingui-macro](https://github.com/lingui/js-lingui/tree/HEAD/packages/babel-plugin-lingui-macro) | `5.9.3` | `6.1.0` |\n| [@lingui/cli](https://github.com/lingui/js-lingui/tree/HEAD/packages/cli) | `5.9.3` | `6.1.0` |\n| [@lingui/macro](https://github.com/lingui/js-lingui/tree/HEAD/packages/macro) | `5.9.3` | `5.9.5` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.5.0` | `25.9.1` |\n| [@vanilla-extract/vite-plugin](https://github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/vite-plugin) | `5.2.1` | `5.2.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.2.0` | `6.0.2` |\n| [otpauth](https://github.com/hectorm/otpauth) | `9.5.0` | `9.5.1` |\n| [rollup](https://github.com/rollup/rollup) | `4.60.0` | `4.60.4` |\n| [rollup-plugin-license](https://github.com/mjeanroy/rollup-plugin-license) | `3.7.0` | `3.7.1` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `6.4.2` | `8.0.14` |\n| [vite-plugin-dts](https://github.com/qmhc/unplugin-dts/tree/HEAD/packages/vite-plugin-dts) | `4.5.4` | `5.0.1` |\n| [vite-plugin-istanbul](https://github.com/iFaxity/vite-plugin-istanbul) | `8.0.0` | `9.0.0` |\n\n\nUpdates `@codemirror/autocomplete` from 6.20.1 to 6.20.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/codemirror/autocomplete/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@codemirror/lint` from 6.9.5 to 6.9.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/codemirror/lint/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@codemirror/search` from 6.6.0 to 6.7.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/codemirror/search/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@codemirror/view` from 6.40.0 to 6.43.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/codemirror/view/blob/main/CHANGELOG.md\"\u003e@​codemirror/view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.41.0 (2026-04-01)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cp\u003eFix an issue where \u003ccode\u003eEditorView.posAtCoords\u003c/code\u003e could incorrectly return a position near a higher element on the line, in mixed-font-size lines.\u003c/p\u003e\n\u003cp\u003eExpand the workaround for the Webkit bug that causes nonexistent selections to stay visible to be active on non-Safari Webkit browsers.\u003c/p\u003e\n\u003ch3\u003eNew features\u003c/h3\u003e\n\u003cp\u003eThe new \u003ccode\u003eEditorView.cursorScrollMargin\u003c/code\u003e facet can now be used to configure the extra space used when scrolling the cursor into view.\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/codemirror/view/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@fortawesome/react-fontawesome` from 3.3.0 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/react-fontawesome/releases\"\u003e@​fortawesome/react-fontawesome's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.3.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/compare/v3.3.0...v3.3.1\"\u003e3.3.1\u003c/a\u003e (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eJust a few dependency bumps to close off CVEs (not that our lib is really affected anyway).\u003c/p\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump handlebars from 4.7.8 to 4.7.9 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/f1d6d943d0f1a014c5cec77d244fc021c0a09c93\"\u003ef1d6d94\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump lodash-es from 4.17.23 to 4.18.1 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/212496a5b3cc2a054da0400db608296e8ac59c4c\"\u003e212496a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump picomatch from 2.3.1 to 2.3.2 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/557ceaf5f47b45df48bb70385ecbe54aa0eb340f\"\u003e557ceaf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e bump lodash from 4.17.23 to 4.18.1 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/2d06890530c90d019f33b5c361f436deb13261f9\"\u003e2d06890\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e node 22.22.2, bump all dev dependencies (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/99ba500ede9a68c3973c1fe0d6c2475d9d40b699\"\u003e99ba500\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/FortAwesome/react-fontawesome/blob/main/CHANGELOG.md\"\u003e@​fortawesome/react-fontawesome's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/compare/v3.3.0...v3.3.1\"\u003e3.3.1\u003c/a\u003e (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump handlebars from 4.7.8 to 4.7.9 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/f1d6d943d0f1a014c5cec77d244fc021c0a09c93\"\u003ef1d6d94\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump lodash-es from 4.17.23 to 4.18.1 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/212496a5b3cc2a054da0400db608296e8ac59c4c\"\u003e212496a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump picomatch from 2.3.1 to 2.3.2 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/557ceaf5f47b45df48bb70385ecbe54aa0eb340f\"\u003e557ceaf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e bump lodash from 4.17.23 to 4.18.1 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/2d06890530c90d019f33b5c361f436deb13261f9\"\u003e2d06890\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e node 22.22.2, bump all dev dependencies (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/99ba500ede9a68c3973c1fe0d6c2475d9d40b699\"\u003e99ba500\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/FortAwesome/react-fontawesome/commit/75b30aa58036501e94272d024e942a6773ba0d2e\"\u003e\u003ccode\u003e75b30aa\u003c/code\u003e\u003c/a\u003e chore(release): 3.3.1 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/99ba500ede9a68c3973c1fe0d6c2475d9d40b699\"\u003e\u003ccode\u003e99ba500\u003c/code\u003e\u003c/a\u003e chore(deps): node 22.22.2, bump all dev dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/31a2676d1a2c00d7e055c05fa7ead879af1824ed\"\u003e\u003ccode\u003e31a2676\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FortAwesome/react-fontawesome/issues/639\"\u003e#639\u003c/a\u003e from FortAwesome/dependabot/npm_and_yarn/lodash-4.18.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/2d06890530c90d019f33b5c361f436deb13261f9\"\u003e\u003ccode\u003e2d06890\u003c/code\u003e\u003c/a\u003e chore(deps): bump lodash from 4.17.23 to 4.18.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/741a193caf218a7baa647de11c0f3226ddd83b95\"\u003e\u003ccode\u003e741a193\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FortAwesome/react-fontawesome/issues/638\"\u003e#638\u003c/a\u003e from FortAwesome/dependabot/npm_and_yarn/lodash-es-4....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/212496a5b3cc2a054da0400db608296e8ac59c4c\"\u003e\u003ccode\u003e212496a\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump lodash-es from 4.17.23 to 4.18.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/8deeceba85ccc678c062a20a4cfa22d945e89930\"\u003e\u003ccode\u003e8deeceb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FortAwesome/react-fontawesome/issues/636\"\u003e#636\u003c/a\u003e from FortAwesome/dependabot/npm_and_yarn/handlebars-4...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/5df5ade7c54e873fe9b64de017f6a9b89f264a2e\"\u003e\u003ccode\u003e5df5ade\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FortAwesome/react-fontawesome/issues/635\"\u003e#635\u003c/a\u003e from FortAwesome/dependabot/npm_and_yarn/picomatch-2.3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/f1d6d943d0f1a014c5cec77d244fc021c0a09c93\"\u003e\u003ccode\u003ef1d6d94\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump handlebars from 4.7.8 to 4.7.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/557ceaf5f47b45df48bb70385ecbe54aa0eb340f\"\u003e\u003ccode\u003e557ceaf\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump picomatch from 2.3.1 to 2.3.2\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/FortAwesome/react-fontawesome/compare/v3.3.0...v3.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@lingui/core` from 5.9.3 to 6.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lingui/js-lingui/releases\"\u003e@​lingui/core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.1.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.1...v6.1.0\"\u003e6.1.0\u003c/a\u003e (2026-05-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003elingui-set\u003c/code\u003e/\u003ccode\u003elingui-reset\u003c/code\u003e comment directives (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2514\"\u003e#2514\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e96a52e8\u003c/a\u003e) (\u003ca href=\"https://lingui.dev/ref/macro#lingui-directive\"\u003eDocumentation\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edisappearing placeholder comments in partial extract (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2543\"\u003e#2543\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/725a2bf4d0b0cbf5d405d6e9ed79efa391bdd572\"\u003e725a2bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.0.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0...v6.0.1\"\u003e6.0.1\u003c/a\u003e (2026-04-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eavoid throwing on object spreads in extractFromObjectExpression (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2538\"\u003e#2538\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/7cbc0a8638e1cc2f5ea702922b46156c0555fe29\"\u003e7cbc0a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecli:\u003c/strong\u003e declare files arguments (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2532\"\u003e#2532\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/4a55abe7b3d046b972cb26a3c5a11acf397f1d7a\"\u003e4a55abe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003ev6.0.0\u003c/a\u003e\u003c/h1\u003e\n\u003cp\u003eWe are pleased to announce the release of \u003cstrong\u003eLingui 6.0\u003c/strong\u003e ✨\u003c/p\u003e\n\u003cp\u003eThis release marks a \u003cstrong\u003emajor milestone\u003c/strong\u003e for the project. It includes a transition to ESM-only distribution, reduced dependency graph, the removal of deprecated APIs, and improved TypeScript support. A few new features have also been introduced.\u003c/p\u003e\n\u003cp\u003eCheck out the links below for more details:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/blog/2026/04/22/announcing-lingui-6.0\"\u003eBlog Post: Announcing Lingui 6.0\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/releases/migration-6\"\u003eMigration Guide from 5.x to 6.x\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003eFull Changelog\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDiscussion\u003c/h2\u003e\n\u003cp\u003eIf you have any questions or suggestions regarding this release, please visit the \u003ca href=\"https://github.com/lingui/js-lingui/discussions/2455\"\u003eRelated Discussion\u003c/a\u003e or our \u003ca href=\"https://discord.gg/tBZqKpeF\"\u003eDiscord Server\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003ev6.0.0-next.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0-next.3...v6.0.0-next.4\"\u003ev6.0.0-next.4\u003c/a\u003e (2026-04-17)\u003c/h2\u003e\n\u003cp\u003eVisit the \u003ca href=\"https://js-lingui-git-next-crowdin.vercel.app\"\u003ev6 website deployment\u003c/a\u003e to see the relevant docs, including the \u003ca href=\"https://js-lingui-git-next-crowdin.vercel.app/releases/migration-6\"\u003emigration guide from 5.x to 6.x\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003econsolidate metadata transformation options into \u003ccode\u003edescriptorFields\u003c/code\u003e (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2513\"\u003e#2513\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\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/lingui/js-lingui/blob/main/packages/core/CHANGELOG.md\"\u003e@​lingui/core's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.1...v6.1.0\"\u003e6.1.0\u003c/a\u003e (2026-05-21)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd lingui-set/lingui-reset comment directives (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2514\"\u003e#2514\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e96a52e8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0...v6.0.1\"\u003e6.0.1\u003c/a\u003e (2026-04-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/core\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003e6.0.0\u003c/a\u003e (2026-04-22)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/blog/2026/04/22/announcing-lingui-6.0\"\u003eAnnouncing Lingui 6.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.4...v5.9.5\"\u003e5.9.5\u003c/a\u003e (2026-04-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/core\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.3...v5.9.4\"\u003e5.9.4\u003c/a\u003e (2026-03-27)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/core\u003c/code\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/lingui/js-lingui/commit/46a340af0dbfc8e4ac483cc607c2b24ac48ab56b\"\u003e\u003ccode\u003e46a340a\u003c/code\u003e\u003c/a\u003e chore(release): published v6.1.0 [skip ci] (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2550\"\u003e#2550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e\u003ccode\u003e96a52e8\u003c/code\u003e\u003c/a\u003e feat: add lingui-set/lingui-reset comment directives (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2514\"\u003e#2514\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/a710fd3c6dca7406a5b0ee219e99474586e93e59\"\u003e\u003ccode\u003ea710fd3\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.1 [skip ci] (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2541\"\u003e#2541\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/b91bb94b6fc59c85d460a4d403be41e70d11b717\"\u003e\u003ccode\u003eb91bb94\u003c/code\u003e\u003c/a\u003e chore: update tooling: Yarn, Vitest (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2539\"\u003e#2539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/a194ab486dd979c42b39d90c80e5c3e2283bf8c7\"\u003e\u003ccode\u003ea194ab4\u003c/code\u003e\u003c/a\u003e chore: official v6 release (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2500\"\u003e#2500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/9216f052768abd987bae67451eef512cf047c152\"\u003e\u003ccode\u003e9216f05\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.4 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2521\"\u003e#2521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/1597e3a3321f02a668285bec3f5e9b24c1ef2765\"\u003e\u003ccode\u003e1597e3a\u003c/code\u003e\u003c/a\u003e chore: improve public package descriptions and keywords (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/ebcb6dc8e8d327ae5775cadee931942ef309480f\"\u003e\u003ccode\u003eebcb6dc\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.3 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/4b244312eb16e94451a33f6dac60ecdbb55d6f74\"\u003e\u003ccode\u003e4b24431\u003c/code\u003e\u003c/a\u003e feat(vite-plugin): Vite 8 compatibility + linguiTransformerBabelPreset (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2487\"\u003e#2487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/f4bcdd555ceef0bed58b2f3075096efd4daaeec2\"\u003e\u003ccode\u003ef4bcdd5\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.2 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2485\"\u003e#2485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lingui/js-lingui/commits/v6.1.0/packages/core\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@lingui/react` from 5.9.3 to 6.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lingui/js-lingui/releases\"\u003e@​lingui/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.1.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.1...v6.1.0\"\u003e6.1.0\u003c/a\u003e (2026-05-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003elingui-set\u003c/code\u003e/\u003ccode\u003elingui-reset\u003c/code\u003e comment directives (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2514\"\u003e#2514\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e96a52e8\u003c/a\u003e) (\u003ca href=\"https://lingui.dev/ref/macro#lingui-directive\"\u003eDocumentation\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edisappearing placeholder comments in partial extract (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2543\"\u003e#2543\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/725a2bf4d0b0cbf5d405d6e9ed79efa391bdd572\"\u003e725a2bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.0.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0...v6.0.1\"\u003e6.0.1\u003c/a\u003e (2026-04-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eavoid throwing on object spreads in extractFromObjectExpression (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2538\"\u003e#2538\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/7cbc0a8638e1cc2f5ea702922b46156c0555fe29\"\u003e7cbc0a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecli:\u003c/strong\u003e declare files arguments (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2532\"\u003e#2532\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/4a55abe7b3d046b972cb26a3c5a11acf397f1d7a\"\u003e4a55abe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003ev6.0.0\u003c/a\u003e\u003c/h1\u003e\n\u003cp\u003eWe are pleased to announce the release of \u003cstrong\u003eLingui 6.0\u003c/strong\u003e ✨\u003c/p\u003e\n\u003cp\u003eThis release marks a \u003cstrong\u003emajor milestone\u003c/strong\u003e for the project. It includes a transition to ESM-only distribution, reduced dependency graph, the removal of deprecated APIs, and improved TypeScript support. A few new features have also been introduced.\u003c/p\u003e\n\u003cp\u003eCheck out the links below for more details:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/blog/2026/04/22/announcing-lingui-6.0\"\u003eBlog Post: Announcing Lingui 6.0\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/releases/migration-6\"\u003eMigration Guide from 5.x to 6.x\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003eFull Changelog\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDiscussion\u003c/h2\u003e\n\u003cp\u003eIf you have any questions or suggestions regarding this release, please visit the \u003ca href=\"https://github.com/lingui/js-lingui/discussions/2455\"\u003eRelated Discussion\u003c/a\u003e or our \u003ca href=\"https://discord.gg/tBZqKpeF\"\u003eDiscord Server\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003ev6.0.0-next.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0-next.3...v6.0.0-next.4\"\u003ev6.0.0-next.4\u003c/a\u003e (2026-04-17)\u003c/h2\u003e\n\u003cp\u003eVisit the \u003ca href=\"https://js-lingui-git-next-crowdin.vercel.app\"\u003ev6 website deployment\u003c/a\u003e to see the relevant docs, including the \u003ca href=\"https://js-lingui-git-next-crowdin.vercel.app/releases/migration-6\"\u003emigration guide from 5.x to 6.x\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003econsolidate metadata transformation options into \u003ccode\u003edescriptorFields\u003c/code\u003e (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2513\"\u003e#2513\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\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/lingui/js-lingui/blob/main/packages/react/CHANGELOG.md\"\u003e@​lingui/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.1...v6.1.0\"\u003e6.1.0\u003c/a\u003e (2026-05-21)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd lingui-set/lingui-reset comment directives (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2514\"\u003e#2514\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e96a52e8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0...v6.0.1\"\u003e6.0.1\u003c/a\u003e (2026-04-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/react\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003e6.0.0\u003c/a\u003e (2026-04-22)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/blog/2026/04/22/announcing-lingui-6.0\"\u003eAnnouncing Lingui 6.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.4...v5.9.5\"\u003e5.9.5\u003c/a\u003e (2026-04-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/react\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.3...v5.9.4\"\u003e5.9.4\u003c/a\u003e (2026-03-27)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/react\u003c/code\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/lingui/js-lingui/commit/46a340af0dbfc8e4ac483cc607c2b24ac48ab56b\"\u003e\u003ccode\u003e46a340a\u003c/code\u003e\u003c/a\u003e chore(release): published v6.1.0 [skip ci] (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2550\"\u003e#2550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e\u003ccode\u003e96a52e8\u003c/code\u003e\u003c/a\u003e feat: add lingui-set/lingui-reset comment directives (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2514\"\u003e#2514\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/a710fd3c6dca7406a5b0ee219e99474586e93e59\"\u003e\u003ccode\u003ea710fd3\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.1 [skip ci] (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2541\"\u003e#2541\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/b91bb94b6fc59c85d460a4d403be41e70d11b717\"\u003e\u003ccode\u003eb91bb94\u003c/code\u003e\u003c/a\u003e chore: update tooling: Yarn, Vitest (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2539\"\u003e#2539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/a194ab486dd979c42b39d90c80e5c3e2283bf8c7\"\u003e\u003ccode\u003ea194ab4\u003c/code\u003e\u003c/a\u003e chore: official v6 release (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2500\"\u003e#2500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/9216f052768abd987bae67451eef512cf047c152\"\u003e\u003ccode\u003e9216f05\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.4 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2521\"\u003e#2521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/1597e3a3321f02a668285bec3f5e9b24c1ef2765\"\u003e\u003ccode\u003e1597e3a\u003c/code\u003e\u003c/a\u003e chore: improve public package descriptions and keywords (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/ebcb6dc8e8d327ae5775cadee931942ef309480f\"\u003e\u003ccode\u003eebcb6dc\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.3 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/4b244312eb16e94451a33f6dac60ecdbb55d6f74\"\u003e\u003ccode\u003e4b24431\u003c/code\u003e\u003c/a\u003e feat(vite-plugin): Vite 8 compatibility + linguiTransformerBabelPreset (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2487\"\u003e#2487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/f4bcdd555ceef0bed58b2f3075096efd4daaeec2\"\u003e\u003ccode\u003ef4bcdd5\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.2 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2485\"\u003e#2485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lingui/js-lingui/commits/v6.1.0/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@sentry/react` from 10.46.0 to 10.53.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-javascript/releases\"\u003e@​sentry/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.53.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(core): Don't gate user data for streamed spans at scope read time (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20827\"\u003e#20827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(core): Include subpath type shims in published package (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20835\"\u003e#20835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eref(hono): Consolidate route patching and add clarification comments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20829\"\u003e#20829\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): Bump next from 15.5.15 to 15.5.18 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eBundle size 📦\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ePath\u003c/th\u003e\n\u003cth\u003eSize\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e26.22 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e - with treeshaking flags\u003c/td\u003e\n\u003ctd\u003e24.69 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing)\u003c/td\u003e\n\u003ctd\u003e43.69 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing + Span Streaming)\u003c/td\u003e\n\u003ctd\u003e45.62 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing, Profiling)\u003c/td\u003e\n\u003ctd\u003e48.56 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing, Replay)\u003c/td\u003e\n\u003ctd\u003e82.4 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing, Replay) - with treeshaking flags\u003c/td\u003e\n\u003ctd\u003e72.08 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing, Replay with Canvas)\u003c/td\u003e\n\u003ctd\u003e86.99 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing, Replay, Feedback)\u003c/td\u003e\n\u003ctd\u003e99.33 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Feedback)\u003c/td\u003e\n\u003ctd\u003e43 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. sendFeedback)\u003c/td\u003e\n\u003ctd\u003e30.92 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. FeedbackAsync)\u003c/td\u003e\n\u003ctd\u003e35.91 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Metrics)\u003c/td\u003e\n\u003ctd\u003e27.27 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Logs)\u003c/td\u003e\n\u003ctd\u003e27.42 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Metrics \u0026amp; Logs)\u003c/td\u003e\n\u003ctd\u003e28.08 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/react\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e27.92 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/react\u003c/code\u003e (incl. Tracing)\u003c/td\u003e\n\u003ctd\u003e45.9 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/vue\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e31.01 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/vue\u003c/code\u003e (incl. Tracing)\u003c/td\u003e\n\u003ctd\u003e45.5 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/svelte\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e26.24 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle\u003c/td\u003e\n\u003ctd\u003e28.55 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing)\u003c/td\u003e\n\u003ctd\u003e46.04 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Logs, Metrics)\u003c/td\u003e\n\u003ctd\u003e29.89 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Logs, Metrics)\u003c/td\u003e\n\u003ctd\u003e47.14 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Replay, Logs, Metrics)\u003c/td\u003e\n\u003ctd\u003e68.3 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Replay)\u003c/td\u003e\n\u003ctd\u003e82.55 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Replay, Logs, Metrics)\u003c/td\u003e\n\u003ctd\u003e83.6 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Replay, Feedback)\u003c/td\u003e\n\u003ctd\u003e88.23 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics)\u003c/td\u003e\n\u003ctd\u003e89.3 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle - uncompressed\u003c/td\u003e\n\u003ctd\u003e83.97 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing) - uncompressed\u003c/td\u003e\n\u003ctd\u003e138.12 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Logs, Metrics) - uncompressed\u003c/td\u003e\n\u003ctd\u003e88.07 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed\u003c/td\u003e\n\u003ctd\u003e141.5 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Replay, Logs, Metrics) - uncompressed\u003c/td\u003e\n\u003ctd\u003e209.97 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- 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/getsentry/sentry-javascript/blob/develop/CHANGELOG.md\"\u003e@​sentry/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.53.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(core): Don't gate user data for streamed spans at scope read time (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20827\"\u003e#20827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(core): Include subpath type shims in published package (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20835\"\u003e#20835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eref(hono): Consolidate route patching and add clarification comments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20829\"\u003e#20829\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): Bump next from 15.5.15 to 15.5.18 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003e10.53.0\u003c/h2\u003e\n\u003ch3\u003eImportant Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(core): Add \u003ccode\u003estreamGenAiSpans\u003c/code\u003e options to stream gen_ai spans (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20785\"\u003e#20785\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eAdds a new \u003ccode\u003estreamGenAiSpans\u003c/code\u003e option that controls how \u003ccode\u003egen_ai\u003c/code\u003e spans are\nsent to Sentry. When set, the SDK extracts all \u003ccode\u003egen_ai\u003c/code\u003e spans out of a\ntransaction and sends them as v2 envelope items.\u003c/p\u003e\n\u003cp\u003eEnable this option if gen_ai spans are being dropped because the transaction payload exceeds size limits.\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003eSentry.init({\n  dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0',\n  streamGenAiSpans: true,\n});\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(browser): Migrate browser profiling thread data to span attributes (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20800\"\u003e#20800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(core): Add \u003ccode\u003eaddConsoleInstrumentationFilter\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20790\"\u003e#20790\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(core): Add \u003ccode\u003eapplicationKey\u003c/code\u003e to \u003ccode\u003eBuildTimeOptionsBase\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20789\"\u003e#20789\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(core): split exports by browser/server for bundle size (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20435\"\u003e#20435\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(nextjs): Add top-level \u003ccode\u003eapplicationKey\u003c/code\u003e option (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20794\"\u003e#20794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(node): Support Node 26 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20710\"\u003e#20710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(profiling-node): Bump \u003ccode\u003e@sentry-internal/node-cpu-profiler\u003c/code\u003e to 2.4.0 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20720\"\u003e#20720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(cloudflare): avoid flush lock self-wait (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20719\"\u003e#20719\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(hono): Capture transaction name on request for correct culprit (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20801\"\u003e#20801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(mcp): retroactively wrap handlers registered before wrapMcpServerWithSentry (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20699\"\u003e#20699\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(node-core): Guard against undefined util.getSystemErrorMap (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20660\"\u003e#20660\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(replay): Capture aborted/errored fetch requests in replay network tab (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20722\"\u003e#20722\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- 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/getsentry/sentry-javascript/commit/cd9740818cba748dbced0e8a1497000a88ec8a56\"\u003e\u003ccode\u003ecd97408\u003c/code\u003e\u003c/a\u003e release: 10.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/66cfb25117ed7b14ca3da20a79b836619e9c8a6c\"\u003e\u003ccode\u003e66cfb25\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/20838\"\u003e#20838\u003c/a\u003e from getsentry/prepare-release/10.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/df8fd3863043f143961a5d96e79a717d62eada31\"\u003e\u003ccode\u003edf8fd38\u003c/code\u003e\u003c/a\u003e meta(changelog): Update changelog for 10.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/588100986580e0f5c8c3204661e59e5103e7d269\"\u003e\u003ccode\u003e5881009\u003c/code\u003e\u003c/a\u003e fix(core): Include subpath type shims in published package (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/20835\"\u003e#20835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/6a7d179ad38c7591021c88e4bd3ec82b3c6cc606\"\u003e\u003ccode\u003e6a7d179\u003c/code\u003e\u003c/a\u003e fix(core): Don't gate user data for streamed spans at scope read time (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/20827\"\u003e#20827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/ad47c3c3de5b2bacfbbd08bcdf9cd90184ce64bc\"\u003e\u003ccode\u003ead47c3c\u003c/code\u003e\u003c/a\u003e ref(hono): Consolidate route patching and add clarification comments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/20829\"\u003e#20829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/28d6fe514d5ed00561a8e3d1c0406a8cb544c738\"\u003e\u003ccode\u003e28d6fe5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/20826\"\u003e#20826\u003c/a\u003e from getsentry/master\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/46aca45a868d717939448ded1001fac4337ac46e\"\u003e\u003ccode\u003e46aca45\u003c/code\u003e\u003c/a\u003e Merge branch 'release/10.53.0'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/b5cbc9ca1800e1b4ee1de66e135a90891cecd570\"\u003e\u003ccode\u003eb5cbc9c\u003c/code\u003e\u003c/a\u003e chore(deps): Bump next from 15.5.15 to 15.5.18 in /dev-packages/e2e-tests/tes...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/05489b83e7920fc4ce47a530054c5558c1704a45\"\u003e\u003ccode\u003e05489b8\u003c/code\u003e\u003c/a\u003e release: 10.53.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-javascript/compare/10.46.0...10.53.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tabler/icons-react` from 3.40.0 to 3.44.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tabler/tabler-icons/releases\"\u003e@​tabler/icons-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.44.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch3\u003e18 new icons:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eoutline/code-ai\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/email-stamp\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/foodsteps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/git-pull-request-conflict\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/noise-reduction\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/photo-alt\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/pointer-2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/pointer-collaboration-2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/pointer-collaboration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/roulette\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/scan-cube\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/sketching\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/sparkle-2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/sparkle-highlight\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/sparkle\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/sphere-2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/text-scan-ai\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/vignette\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFixed icons: \u003ccode\u003eoutline/air-balloon\u003c/code\u003e, \u003ccode\u003eoutline/body-scan\u003c/code\u003e, \u003ccode\u003eoutline/chart-sankey\u003c/code\u003e, \u003ccode\u003eoutline/ear-scan\u003c/code\u003e, \u003ccode\u003eoutline/grid-scan\u003c/code\u003e, \u003ccode\u003eoutline/line-scan\u003c/code\u003e, \u003ccode\u003eoutline/object-scan\u003c/code\u003e, \u003ccode\u003eoutline/photo-scan\u003c/code\u003e, \u003ccode\u003eoutline/route-scan\u003c/code\u003e, \u003ccode\u003eoutline/scan-eye\u003c/code\u003e, \u003ccode\u003eoutline/scan-letter-a\u003c/code\u003e, \u003ccode\u003eoutline/scan-letter-t\u003c/code\u003e, \u003ccode\u003eoutline/scan-position\u003c/code\u003e, \u003ccode\u003eoutline/scan-traces\u003c/code\u003e, \u003ccode\u003eoutline/scan\u003c/code\u003e, \u003ccode\u003eoutline/text-scan-2\u003c/code\u003e, \u003ccode\u003eoutline/user-scan\u003c/code\u003e, \u003ccode\u003eoutline/zoom-scan\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.43.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch3\u003e18 new icons:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eoutline/acorn\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/acrobatic\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/banana\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/brand-audible\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/building-eiffel-tower\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/car-door\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/car-lifter\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/chocolate\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/dumbbell\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/exercise-ball\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/flood\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/hula-hoop\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/leaf-maple\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/notdef\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/rugby\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/taiwan-dollar\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/target-2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/unicycle\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/tabler/tabler-icons/commit/6d128ed935d4546607b1e4d5d08c8b27bdbe7758\"\u003e\u003ccode\u003e6d128ed\u003c/code\u003e\u003c/a\u003e Release 3.44.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/e40738b64486f857128ae58335354681e4e9dc9b\"\u003e\u003ccode\u003ee40738b\u003c/code\u003e\u003c/a\u003e Release 3.43.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/076f4a9e4d705d6f2cb6fc7f1417501117de12e8\"\u003e\u003ccode\u003e076f4a9\u003c/code\u003e\u003c/a\u003e Release 3.42.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/9b27b65e3d2e72ff4fd219b2dc21da81ea9cbab8\"\u003e\u003ccode\u003e9b27b65\u003c/code\u003e\u003c/a\u003e Release 3.41.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/ebad60b50af5ba521245ab982a3fe69df0e5efd9\"\u003e\u003ccode\u003eebad60b\u003c/code\u003e\u003c/a\u003e Update homepage links in documentation and package files to point to the new ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/8ed617b1b7153d1d35910cda09861077a6f649b9\"\u003e\u003ccode\u003e8ed617b\u003c/code\u003e\u003c/a\u003e Update README files to wrap images in anchor tags linking to the Tabler Icons...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/ef6e875bbef5252b3627fd1281421b10ddd04a16\"\u003e\u003ccode\u003eef6e875\u003c/code\u003e\u003c/a\u003e Update dependencies in pnpm-lock.yaml and package.json files (\u003ca href=\"https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react/issues/1497\"\u003e#1497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/6cbe8857c8baa758383bb0a9e0f6922cf82da01c\"\u003e\u003ccode\u003e6cbe885\u003c/code\u003e\u003c/a\u003e Release 3.41.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/19d735e6206997fe06a42f6546188b9678ad57de\"\u003e\u003ccode\u003e19d735e\u003c/code\u003e\u003c/a\u003e Add JSDoc with previews in icons-react (\u003ca href=\"https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react/issues/1472\"\u003e#1472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tabler/tabler-icons/commits/v3.44.0/packages/icons-react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-query` from 5.95.2 to 5.100.11\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\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/TanStack/query/blob/main/packages/react-query/CHANGELOG.md\"\u003e@​tanstack/react-query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/fcee7bdc429385ae8ffa224fa8a7a9ec7b8ee380\"\u003e\u003ccode\u003efcee7bd\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.7\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.7\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/a53ef97f87decb8ea2431710f5199431d3c94c8d\"\u003e\u003ccode\u003ea53ef97\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.4\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/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3ae42619e5713b2fd6916760e84f7c9ddaa7a317\"\u003e\u003ccode\u003e3ae4261\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10620\"\u003e#10620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/87f7ccf580d7c12c527ce922a43977c9c653f897\"\u003e\u003ccode\u003e87f7ccf\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10604\"\u003e#10604\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/441204b9d22d1dcfc7ac85b04c21ce017a28603e\"\u003e\u003ccode\u003e441204b\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10582\"\u003e#10582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/55afb3e6fb631d684e9448b8265c68a4185c76b3\"\u003e\u003ccode\u003e55afb3e\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10581\"\u003e#10581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/fe287cc2471b74726a5d05f1c40a86a9ef891c7e\"\u003e\u003ccode\u003efe287cc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10579\"\u003e#10579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query@5.100.11/packages/react-query\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@uiw/codemirror-theme-vscode` from 4.25.9 to 4.25.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uiwjs/react-codemirror/releases\"\u003e@​uiw/codemirror-theme-vscode's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.25.10\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://jaywcjlove.github.io/#/sponsor\"\u003e\u003cimg src=\"https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee\" alt=\"Buy me a coffee\" /\u003e\u003c/a\u003e \u003ca href=\"https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-codemirror@4.25.10/file/README.md\"\u003e\u003cimg src=\"https://img.shields.io/badge/Open%20in-unpkg-blue\" alt=\"\" /\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDocumentation v4.25.10: \u003ca href=\"https://raw.githack.com/uiwjs/react-codemirror/5e24acf/index.html\"\u003ehttps://raw.githack.com/uiwjs/react-codemirror/5e24acf/index.html\u003c/a\u003e\u003cbr /\u003e\nComparing Changes: \u003ca href=\"https://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\"\u003ehttps://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\u003c/a\u003e\u003c/p\u003e\n\u003cpre lang=\"shell\"\u003e\u003ccode\u003enpm i @uiw/react-codemirror@4.25.10\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\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/uiwjs/react-codemirror/commit/d54c1303f5e21331458b2b6569ee3897e640c0be\"\u003e\u003ccode\u003ed54c130\u003c/code\u003e\u003c/a\u003e released v4.25.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/229eb4fc2d5e09861261dfb1ee9c1bf64bb0c0a4\"\u003e\u003ccode\u003e229eb4f\u003c/code\u003e\u003c/a\u003e chore: add sponsor SubList.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/d10a51f80dcd073dd5edd3c88c598ec50701b2c2\"\u003e\u003ccode\u003ed10a51f\u003c/code\u003e\u003c/a\u003e doc: update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/30a535effcd0c03539415736ca57d2b6b71bb599\"\u003e\u003ccode\u003e30a535e\u003c/code\u003e\u003c/a\u003e doc: Update READMEs\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@uiw/react-codemirror` from 4.25.9 to 4.25.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uiwjs/react-codemirror/releases\"\u003e@​uiw/react-codemirror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.25.10\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://jaywcjlove.github.io/#/sponsor\"\u003e\u003cimg src=\"https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee\" alt=\"Buy me a coffee\" /\u003e\u003c/a\u003e \u003ca href=\"https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-codemirror@4.25.10/file/README.md\"\u003e\u003cimg src=\"https://img.shields.io/badge/Open%20in-unpkg-blue\" alt=\"\" /\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDocumentation v4.25.10: \u003ca href=\"https://raw.githack.com/uiwjs/react-codemirror/5e24acf/index.html\"\u003ehttps://raw.githack.com/uiwjs/react-codemirror/5e24acf/index.html\u003c/a\u003e\u003cbr /\u003e\nComparing Changes: \u003ca href=\"https://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\"\u003ehttps://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\u003c/a\u003e\u003c/p\u003e\n\u003cpre lang=\"shell\"\u003e\u003ccode\u003enpm i @uiw/react-codemirror@4.25.10\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\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/uiwjs/react-codemirror/commit/d54c1303f5e21331458b2b6569ee3897e640c0be\"\u003e\u003ccode\u003ed54c130\u003c/code\u003e\u003c/a\u003e released v4.25.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/229eb4fc2d5e09861261dfb1ee9c1bf64bb0c0a4\"\u003e\u003ccode\u003e229eb4f\u003c/code\u003e\u003c/a\u003e chore: add sponsor SubList.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/d10a51f80dcd073dd5edd3c88c598ec50701b2c2\"\u003e\u003ccode\u003ed10a51f\u003c/code\u003e\u003c/a\u003e doc: update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/30a535effcd0c03539415736ca57d2b6b71bb599\"\u003e\u003ccode\u003e30a535e\u003c/code\u003e\u003c/a\u003e doc: Update READMEs\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@vanilla-extract/css` from 1.20.0 to 1.20.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/releases\"\u003e@​vanilla-extract/css's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​vanilla-extract/css\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.20.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/vanilla-extract-css/vanilla-extract/pull/1710\"\u003e#1710\u003c/a\u003e \u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/commit/16775939763349513c527b2f33398a03d7d75057\"\u003e\u003ccode\u003e1677593\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/askoufis\"\u003e\u003ccode\u003e@​askoufis\u003c/code\u003e\u003c/a\u003e! - Replace \u003ccode\u003ecssesc\u003c/code\u003e dependency with vendored version\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/vanilla-extract-css/vanilla-extract/blob/master/packages/css/CHANGELOG.md\"\u003e@​vanilla-extract/css's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.20.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/vanilla-extract-css/vanilla-extract/pull/1710\"\u003e#1710\u003c/a\u003e \u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/commit/16775939763349513c527b2f33398a03d7d75057\"\u003e\u003ccode\u003e1677593\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/askoufis\"\u003e\u003ccode\u003e@​askoufis\u003c/code\u003e\u003c/a\u003e! - Replace \u003ccode\u003ecssesc\u003c/code\u003e dependency with vendored version\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/vanilla-extract-css/vanilla-extract/commit/5f3faaec043bbed0afb095d6d5a2430b5ab4734a\"\u003e\u003ccode\u003e5f3faae\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/css/issues/1711\"\u003e#1711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/commit/16775939763349513c527b2f33398a03d7d75057\"\u003e\u003ccode\u003e1677593\u003c/code\u003e\u003c/a\u003e Vendor \u003ccode\u003ecssesc\u003c/code\u003e dependency (\u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/css/issues/1710\"\u003e#1710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/commits/@vanilla-extract/css@1.20.1/packages/css\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `axios` from 1.15.2 to 1.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/axios/axios/releases\"\u003eaxios's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.16.1 — May 13, 2026\u003c/h2\u003e\n\u003cp\u003eThis release ships a defence-in-depth fix for prototype pollution in \u003ccode\u003eformDataToJSON\u003c/code\u003e, hardens proxy and CI workflows, restores Webpack 4 compatibility for the fetch adapter, and includes several small bug fixes and maintenance improvements.\u003c/p\u003e\n\u003ch2\u003e🔒 Security Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePrototype Pollution Defence-in-Depth:\u003c/strong\u003e Hardened \u003ccode\u003eformDataToJSON\u003c/code\u003e against already-polluted \u003ccode\u003eObject.prototype\u003c/code\u003e by walking own properties only, so attacker-controlled keys inherited from a poisoned prototype cannot propagate through deserialization. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/7413\"\u003e#7413\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eProxy Cleartext Leak:\u003c/strong\u003e Fixed an issue where HTTPS request data could be transmitted in cleartext to an HTTP proxy under certain configurations. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10858\"\u003e#10858\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eCI Cache Removal:\u003c/strong\u003e Removed all GitHub Actions caches as a defence-in-depth measure against cache poisoning vectors in the build pipeline. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10882\"\u003e#10882\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eData URI Parsing:\u003c/strong\u003e Updated the \u003ccode\u003efromDataURI\u003c/code\u003e regex to match RFC 2397 more strictly, fixing edge cases in \u003ccode\u003edata:\u003c/code\u003e URL handling. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10829\"\u003e#10829\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eUnicode Headers:\u003c/strong\u003e Preserved Unicode header values when running through request interceptors, so non-ASCII header content is no longer corrupted before dispatch. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10850\"\u003e#10850\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eXHR Upload Progress:\u003c/strong\u003e Guarded against malformed \u003ccode\u003eProgressEvent\u003c/code\u003e payloads emitted by some environments during XHR upload, preventing crashes when \u003ccode\u003eloaded\u003c/code\u003e / \u003ccode\u003etotal\u003c/code\u003e are missing or invalid. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10868\"\u003e#10868\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebpack 4 Fetch Adapter:\u003c/strong\u003e Fixed an \u0026quot;unexpected token\u0026quot; error caused by syntax in the fetch adapter that Webpack 4 could not parse, restoring compatibility for legacy bundler users. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10864\"\u003e#10864\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType Definitions:\u003c/strong\u003e Made \u003ccode\u003eparseReviver\u003c/code\u003e \u003ccode\u003econtext.source\u003c/code\u003e optional in the type definitions to align with the ES2023 specification. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10837\"\u003e#10837\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eURL Object Support Reverted:\u003c/strong\u003e Reverted the change that allowed passing a \u003ccode\u003eURL\u003c/code\u003e object as \u003ccode\u003econfig.url\u003c/code\u003e (originally \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10866\"\u003e#10866\u003c/a\u003e\u003c/strong\u003e) due to regressions; this support will be reintroduced in a later release once the underlying issues are addressed. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10874\"\u003e#10874\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔧 Maintenance \u0026amp; Chores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eCycle Detection Refactor:\u003c/strong\u003e Replaced the array-based cycle tracker in \u003ccode\u003etoJSONObject\u003c/code\u003e with a \u003ccode\u003eWeakSet\u003c/code\u003e, improving performance and memory behaviour on large nested structures. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10832\"\u003e#10832\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecomposeSignals Cleanup:\u003c/strong\u003e Refactored \u003ccode\u003ecomposeSignals\u003c/code\u003e to use a clearer early-return structure, simplifying the cancellation/abort composition path. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10844\"\u003e#10844\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eAI Readiness \u0026amp; Repo Docs:\u003c/strong\u003e Added \u003ccode\u003eAGENTS.md\u003c/code\u003e and related contributor-guide updates for both human and AI agents, plus post-release documentation improvements. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10835\"\u003e#10835\u003c/a\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10841\"\u003e#10841\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDocs Improvements:\u003c/strong\u003e Clarified the GET request example, fixed the interceptor \u003ccode\u003eeject\u003c/code\u003e example to reference the correct instance, and corrected the Buzzoid sponsor description in the README. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10836\"\u003e#10836\u003c/a\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10853\"\u003e#10853\u003c/a\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10856\"\u003e#10856\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eSponsorship Tooling:\u003c/strong\u003e Fixed empty sponsor arrays in the sponsor processing script, added the ability to inject additional sponsors, updated the sponsorship link, and added a Twicsy advertisement entry. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10843\"\u003e#10843\u003c/a\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10859\"\u003e#10859\u003c/a\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10869\"\u003e#10869\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDependencies:\u003c/strong\u003e Bumped \u003ccode\u003e@commitlint/cli\u003c/code\u003e from 20.5.0 to 20.5.2. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10846\"\u003e#10846\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🌟 New Contributors\u003c/h2\u003e\n\u003cp\u003eWe are thrilled to welcome our new contributors. Thank you for helping improve axios:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/hpinmetaverse\"\u003e\u003ccode\u003e@​hpinmetaverse\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10836\"\u003e#10836\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/tommyhgunz14\"\u003e\u003ccode\u003e@​tommyhgunz14\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/7413\"\u003e#7413\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/abhu85\"\u003e\u003ccode\u003e@​abhu85\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10829\"\u003e#10829\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/divyanshuraj1095\"\u003e\u003ccode\u003e@​divyanshuraj1095\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10853\"\u003e#10853\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/sagodi97\"\u003e\u003ccode\u003e@​sagodi97\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10856\"\u003e#10856\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/rkdfx\"\u003e\u003ccode\u003e@​rkdfx\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10868\"\u003e#10868\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/Liuwei1125\"\u003e\u003ccode\u003e@​Liuwei1125\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10866\"\u003e#10866\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/axios/axios/compare/v1.16.0...v1.16.1\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.16.0 — May 2, 2026\u003c/h2\u003e\n\u003cp\u003eThis release adds support for the QUERY HTTP method and a new \u003ccode\u003eECONNREFUSED\u003c/code\u003e error constant, lands a substantial wave of HTTP, fetch, and XHR adapter bug fixes around redirects, aborts, headers, and timeouts, and welcomes 23 new contributors.\u003c/p\u003e\n\u003ch2\u003e⚠️ Notable Changes\u003c/h2\u003e\n\u003cp\u003eA handful of fixes in this release are either security-adjacent or change observable behaviour. Please review before upgrading:\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/axios/axios/blob/v1.x/CHANGELOG.md\"\u003eaxios's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.16.1 — May 13, 2026\u003c/h2\u003e\n\u003cp\u003eThis release ships a defence-in-depth fix for prototype pollution in \u003ccode\u003eformDataToJSON\u003c/code\u003e, hardens proxy and CI workflows, restores Webpack 4 compatibility for the fetch adapter, and includes several small bug fixes and maintenance improvements.\u003c/p\u003e\n\u003ch2\u003e🔒 Security Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePrototype Pollution Defence-in-Depth:\u003c/strong\u003e Hardened \u003ccode\u003eformDataToJSON\u003c/code\u003e against already-polluted \u003ccode\u003eObject.prototype\u003c/code\u003e by walking own properties only, so attacker-controlled keys inherited from a poisoned prototype cannot propagate through deserialization. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/7413\"\u003e#7413\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eProxy Cleartext Leak:\u003c/strong\u003e Fixed an issue where HTTPS request data could be transmitted in cleartext to an HTTP proxy under certain configurations. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10858\"\u003e#10858\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eCI Cache Removal:\u003c/strong\u003e Removed all GitHub Actions caches as a defence-in-depth measure against cache poisoning vectors in the build pipeline. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10882\"\u003e#10882\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eData URI Parsing:\u003c/strong\u003e Updated the \u003ccode\u003efromDataURI\u003c/code\u003e regex to match RFC 2397 more strictly, fixing edge cases in \u003ccode\u003edata:\u003c/code\u003e URL handling. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10829\"\u003e#10829\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eUnicode Headers:\u003c/strong\u003e Preserved Unicode header values when running through request interceptors, so non-ASCII header content is no longer corrupted before dispatch. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10850\"\u003e#10850\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eXHR Upload Progress:\u003c/strong\u003e Guarded against malformed \u003ccode\u003eProgressEvent\u003c/code\u003e payloads emitted by some environments during XHR upload, preventing crashes when \u003ccode\u003eloaded\u003c/code\u003e / \u003ccode\u003etotal\u003c/code\u003e are missing or invalid. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10868\"\u003e#10868\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebpack 4 Fetch Adapter:\u003c/strong\u003e Fixed an \u0026quot;unexpected token\u0026quot; error caused by syntax in the fetch adapter that Webpack 4 could not parse, restoring compatibility for legacy bundler users. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10864\"\u003e#10864\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType Definitions:\u003c/strong\u003e Made \u003ccode\u003eparseReviver\u003c/code\u003e \u003ccode\u003econtext.source\u003c/code\u003e optional in the type definitions to align with the ES2023 specification. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10837\"\u003e#10837\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eURL Object Support Reverted:\u003c/strong\u003e Reverted the change that allowed passing a \u003ccode\u003eURL\u003c/code\u003e object as \u003ccode\u003econfig.url\u003c/code\u003e (originally \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10866\"\u003e#10866\u003c/a\u003e\u003c/strong\u003e) due to regressions; this support will be reintroduced in a later release once the underlying issues are addressed. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10874\"\u003e#10874\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔧 Maintenance \u0026amp; Chores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eCycle Detection Refactor:\u003c/strong\u003e Replaced the array-based cycle tracker in \u003ccode\u003etoJSONObject\u003c/code\u003e with a \u003ccode\u003eWeakSet\u003c/code\u003e, improving performance and memory behaviour on large ne...\n\n_Description has been truncated_","html_url":"https://github.com/invenhost/InvenTree/pull/348","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/invenhost%2FInvenTree/issues/348","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/348/packages"}],"issue_packages":[{"old_version":"1.59.1","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-31T05:39:35.000Z","version_change":"1.59.1 → 1.60.0","issue":{"uuid":"4556687756","node_id":"PR_kwDORwQ7Hc7hDGts","number":66,"state":"open","title":"deps: bump the production-dependencies group across 1 directory with 12 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-31T05:39:35.000Z","updated_at":"2026-05-31T05:43:26.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps: bump","group_name":"production-dependencies","update_count":12,"packages":[{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tanstack/react-virtual","old_version":"3.13.24","new_version":"3.13.26","repository_url":"https://github.com/TanStack/virtual"},{"name":"date-fns","old_version":"4.1.0","new_version":"4.4.0","repository_url":"https://github.com/date-fns/date-fns"},{"name":"stripe","old_version":"22.1.1","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"zustand","old_version":"5.0.13","new_version":"5.0.14","repository_url":"https://github.com/pmndrs/zustand"},{"name":"@react-native-async-storage/async-storage","old_version":"3.0.2","new_version":"3.1.1","repository_url":"https://github.com/react-native-async-storage/async-storage"},{"name":"@react-navigation/bottom-tabs","old_version":"7.15.13","new_version":"7.16.2","repository_url":"https://github.com/react-navigation/react-navigation"},{"name":"@react-navigation/native","old_version":"7.2.4","new_version":"7.2.5","repository_url":"https://github.com/react-navigation/react-navigation"},{"name":"@supabase/supabase-js","old_version":"2.105.4","new_version":"2.106.2","repository_url":"https://github.com/supabase/supabase-js"},{"name":"react-native-safe-area-context","old_version":"5.7.0","new_version":"5.8.0","repository_url":"https://github.com/AppAndFlow/react-native-safe-area-context"},{"name":"react-native-screens","old_version":"4.24.0","new_version":"4.25.2","repository_url":"https://github.com/software-mansion/react-native-screens"},{"name":"@clerk/nextjs","old_version":"7.3.3","new_version":"7.4.2","repository_url":"https://github.com/clerk/javascript"}],"path":null,"ecosystem":"npm"},"body":"Bumps the production-dependencies group with 12 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [@tanstack/react-virtual](https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual) | `3.13.24` | `3.13.26` |\n| [date-fns](https://github.com/date-fns/date-fns) | `4.1.0` | `4.4.0` |\n| [stripe](https://github.com/stripe/stripe-node) | `22.1.1` | `22.2.0` |\n| [zustand](https://github.com/pmndrs/zustand) | `5.0.13` | `5.0.14` |\n| [@react-native-async-storage/async-storage](https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage) | `3.0.2` | `3.1.1` |\n| [@react-navigation/bottom-tabs](https://github.com/react-navigation/react-navigation/tree/HEAD/packages/bottom-tabs) | `7.15.13` | `7.16.2` |\n| [@react-navigation/native](https://github.com/react-navigation/react-navigation/tree/HEAD/packages/native) | `7.2.4` | `7.2.5` |\n| [@supabase/supabase-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js) | `2.105.4` | `2.106.2` |\n| [react-native-safe-area-context](https://github.com/AppAndFlow/react-native-safe-area-context) | `5.7.0` | `5.8.0` |\n| [react-native-screens](https://github.com/software-mansion/react-native-screens) | `4.24.0` | `4.25.2` |\n| [@clerk/nextjs](https://github.com/clerk/javascript/tree/HEAD/packages/nextjs) | `7.3.3` | `7.4.2` |\n\n\nUpdates `@playwright/test` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-virtual` from 3.13.24 to 3.13.26\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/virtual/releases\"\u003e@​tanstack/react-virtual's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-virtual\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.13.26\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.16.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-virtual\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.13.25\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace the \u003ccode\u003euseReducer(() =\u0026gt; ({}), {})\u003c/code\u003e force-rerender pattern with an (\u003ca href=\"https://redirect.github.com/TanStack/virtual/pull/1168\"\u003e#1168\u003c/a\u003e)\nincrementing number counter. Same semantics (every dispatch changes the\nreducer state, forcing a render); zero per-dispatch object allocation.\nTrivial individual cost, but eliminates one steady-state GC source on\nscroll-heavy apps.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.15.0\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/TanStack/virtual/blob/main/packages/react-virtual/CHANGELOG.md\"\u003e@​tanstack/react-virtual's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.13.26\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.16.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.13.25\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace the \u003ccode\u003euseReducer(() =\u0026gt; ({}), {})\u003c/code\u003e force-rerender pattern with an (\u003ca href=\"https://redirect.github.com/TanStack/virtual/pull/1168\"\u003e#1168\u003c/a\u003e)\nincrementing number counter. Same semantics (every dispatch changes the\nreducer state, forcing a render); zero per-dispatch object allocation.\nTrivial individual cost, but eliminates one steady-state GC source on\nscroll-heavy apps.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.15.0\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/TanStack/virtual/commit/693d915e0670cbba5c3e42d0d2a46f085dd7d44e\"\u003e\u003ccode\u003e693d915\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e feat: support end-anchored virtualizers (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/949180be8adf66ea8428b326db72ebad42d5b4c3\"\u003e\u003ccode\u003e949180b\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e perf: virtual-core rewrite for mount/measure-storm, plus iOS Safari handling ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/3374977c623cd95eb4cdb44ad44eb94677d65c1e\"\u003e\u003ccode\u003e3374977\u003c/code\u003e\u003c/a\u003e chore(angular-virtual)!: upgrade Angular to v19 (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/TanStack/virtual/commits/@tanstack/react-virtual@3.13.26/packages/react-virtual\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `date-fns` from 4.1.0 to 4.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/date-fns/date-fns/releases\"\u003edate-fns's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.0\u003c/h2\u003e\n\u003cp\u003eThis release revisits the approach to CDN usage and introduces a new package, \u003ccode\u003e@date-fns/cdn\u003c/code\u003e and deprecates the \u003ccode\u003edate-fns\u003c/code\u003e CDN scripts. It allowed reducing the zipped package size from \u003ccode\u003e5.83 MB\u003c/code\u003e down to \u003ccode\u003e3.96 MB\u003c/code\u003e without introducing any breaking changes.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003ev5.0.0-alpha.0\u003c/code\u003e where CDN scripts are completely removed from \u003ccode\u003edate-fns\u003c/code\u003e the change is more significant and brings the zipped package size down to \u003ccode\u003e2.89 MB\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIt is just the first step in optimizing the package size. Expect further size reduction in the future v4 and v5 versions.\u003c/p\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eDEPRECATED\u003c/strong\u003e: The \u003ccode\u003edate-fns\u003c/code\u003e CDN scripts are now deprecated and will be removed in the next major release. Please switch to the new \u003ccode\u003e@date-fns/cdn\u003c/code\u003e package for CDN usage.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved CDN source maps to reduce the package size. If you rely on them, please switch to the new \u003ccode\u003e@date-fns/cdn\u003c/code\u003e package that still includes them.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003cp\u003eKudos to \u003ca href=\"https://github.com/ImRodry\"\u003e\u003ccode\u003e@​ImRodry\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/puneetdixit200\"\u003e\u003ccode\u003e@​puneetdixit200\u003c/code\u003e\u003c/a\u003e for their contributions.\u003c/p\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed missing modularized optimization fallback (\u003ca href=\"https://x.com/kossnocorp/status/1731181274579325260\"\u003efor Next.js and others\u003c/a\u003e). See \u003ca href=\"https://x.com/kossnocorp/status/1731181274579325260\"\u003e#4193\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003ept\u003c/code\u003e locale first day of week to be Sunday. See \u003ca href=\"https://redirect.github.com/date-fns/date-fns/pull/4195\"\u003e#4195\u003c/a\u003e by \u003ca href=\"https://github.com/ImRodry\"\u003e\u003ccode\u003e@​ImRodry\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003ezh-CN\u003c/code\u003e, \u003ccode\u003ezh-HK\u003c/code\u003e, and \u003ccode\u003ezh-TW\u003c/code\u003e locale month parsing for October, November, and December. See \u003ca href=\"https://redirect.github.com/date-fns/date-fns/pull/4194\"\u003e#4194\u003c/a\u003e by \u003ca href=\"https://github.com/puneetdixit200\"\u003e\u003ccode\u003e@​puneetdixit200\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed type definitions missing in v4.2.0 due to TypeScript misconfiguration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.0\u003c/h2\u003e\n\u003cp\u003eThis is a minor release in all senses, it only includes documentation updates (first of many) that points to the new \u003ca href=\"https://date-fns.org/you-dont-need-date-fns\"\u003eYou Don't Need date-fns*\u003c/a\u003e page.\u003c/p\u003e\n\u003cp\u003e* Not really\u003c/p\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded Temporal API references to the JSDoc annotations of \u003ccode\u003eadd\u003c/code\u003e, \u003ccode\u003eaddBusinessDays\u003c/code\u003e, and \u003ccode\u003eaddDays\u003c/code\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/date-fns/date-fns/commit/cd53d2538cfa318404eff7ade6449b49bf34562e\"\u003e\u003ccode\u003ecd53d25\u003c/code\u003e\u003c/a\u003e Promote to v4.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/d948ec151d395096de8a45fbcd9b1e79c26fda25\"\u003e\u003ccode\u003ed948ec1\u003c/code\u003e\u003c/a\u003e Preserve but deprecate CDN versions for v4, set up v5 with polyfills\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/ee65753cfc5d73cc9acd43aaa8012b3b233ddf32\"\u003e\u003ccode\u003eee65753\u003c/code\u003e\u003c/a\u003e Add root \u003ccode\u003emise :format\u003c/code\u003e task\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/9f5bdf5d5a944772aa9668c4fa6567d89ca01fa9\"\u003e\u003ccode\u003e9f5bdf5\u003c/code\u003e\u003c/a\u003e Add positional argument to \u003ccode\u003etest/smoke.sh\u003c/code\u003e script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/651ead6faf331515814803faf457f5b9db7c9729\"\u003e\u003ccode\u003e651ead6\u003c/code\u003e\u003c/a\u003e Split CDN bundles into separate \u003ccode\u003e@​date-fns/cdn\u003c/code\u003e package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/224c1a209967dad359a2c2adc9a5b0ef72e4fe7b\"\u003e\u003ccode\u003e224c1a2\u003c/code\u003e\u003c/a\u003e Deprecate type tests as attw hangs on date-fns package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/7bb2842dac3d579f84b2de62f015335fb3ac734a\"\u003e\u003ccode\u003e7bb2842\u003c/code\u003e\u003c/a\u003e Switch \u003ccode\u003ePACKAGE_OUTPUT_PATH\u003c/code\u003e to \u003ccode\u003e--dist\u003c/code\u003e flag in the package build script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/b6ad5acc5ab0b40777a2695ec074c2ffcd982763\"\u003e\u003ccode\u003eb6ad5ac\u003c/code\u003e\u003c/a\u003e Add flags to control package build script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/424a783de1fd974bcdbe907c9c5eb5154e9db29f\"\u003e\u003ccode\u003e424a783\u003c/code\u003e\u003c/a\u003e Fix docs release after moving to monorepo setup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/f95bcf18b53e6832b2c575c24c98654a24f52699\"\u003e\u003ccode\u003ef95bcf1\u003c/code\u003e\u003c/a\u003e (docs): Add missing \u003ccode\u003etsx\u003c/code\u003e dependency\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/date-fns/date-fns/compare/v4.1.0...v4.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `stripe` from 22.1.1 to 22.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/stripe/stripe-node/releases\"\u003estripe's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev22.2.0\u003c/h2\u003e\n\u003cp\u003eThis release changes the pinned API version to 2026-05-27.dahlia.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/stripe/stripe-node/pull/2710\"\u003e#2710\u003c/a\u003e Update generated code\n\u003cul\u003e\n\u003cli\u003eAdd support for new resource \u003ccode\u003eV2.Commerce.ProductCatalogImport\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecreate\u003c/code\u003e and \u003ccode\u003eretrieve\u003c/code\u003e methods on resource \u003ccode\u003eV2.Commerce.ProductCatalogImport\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebizum_payments\u003c/code\u003e and \u003ccode\u003escalapay_payments\u003c/code\u003e on \u003ccode\u003eAccount.capabilities\u003c/code\u003e, \u003ccode\u003eAccountCreateParams.capabilities\u003c/code\u003e, and \u003ccode\u003eAccountUpdateParams.capabilities\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eautomatic_transfer_rules_by_currency\u003c/code\u003e on \u003ccode\u003eBalanceSettingUpdateParams.payments.payouts\u003c/code\u003e and \u003ccode\u003eBalanceSettings.payments.payouts\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003estart_of_day\u003c/code\u003e on \u003ccode\u003eBalanceSettingUpdateParams.payments.settlement_timing\u003c/code\u003e and \u003ccode\u003eBalanceSettings.payments.settlement_timing\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003edescription\u003c/code\u003e on \u003ccode\u003eChargeCreateParams.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebizum\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details\u003c/code\u003e, \u003ccode\u003eConfirmationToken.payment_method_preview\u003c/code\u003e, \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003ePaymentIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationUpdateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfiguration\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethod\u003c/code\u003e, \u003ccode\u003ePaymentRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003eSetupIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentUpdateParams.payment_method_data\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_options\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003escalapay\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details\u003c/code\u003e, \u003ccode\u003eCheckout.Session.payment_method_options\u003c/code\u003e, \u003ccode\u003eCheckout.SessionCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eConfirmationToken.payment_method_preview\u003c/code\u003e, \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003ePaymentIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationUpdateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfiguration\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethod\u003c/code\u003e, \u003ccode\u003ePaymentRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003eRefund.destination_details\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003emandate\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details.twint\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details.twint\u003c/code\u003e, and \u003ccode\u003ePaymentRecord.payment_method_details.twint\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eCheckout.SessionCreateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.excluded_payment_method_types\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.excluded_payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eChange type of \u003ccode\u003eCheckout.SessionCreateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e from \u003ccode\u003eliteral('none')\u003c/code\u003e to \u003ccode\u003eenum('none'|'off_session')\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enum \u003ccode\u003eCheckout.SessionCreateParams.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Change type of \u003ccode\u003eCheckout.Session.payment_method_options.twint.setup_future_usage\u003c/code\u003e and \u003ccode\u003ePaymentIntent.payment_method_options.twint.setup_future_usage\u003c/code\u003e from \u003ccode\u003eliteral('none')\u003c/code\u003e to \u003ccode\u003eenum('none'|'off_session')\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data.type\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_data.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eConfirmationToken.payment_method_preview.type\u003c/code\u003e and \u003ccode\u003ePaymentMethod.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eCustomerListPaymentMethodsParams.type\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams.type\u003c/code\u003e, and \u003ccode\u003ePaymentMethodListParams.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecredited_items\u003c/code\u003e on \u003ccode\u003eInvoiceItem.proration_details\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003etwint\u003c/code\u003e on enums \u003ccode\u003eInvoiceCreateParams.payment_settings.payment_method_types\u003c/code\u003e, \u003ccode\u003eInvoiceUpdateParams.payment_settings.payment_method_types\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.payment_settings.payment_method_types\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.payment_settings.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ediscountable\u003c/code\u003e on \u003ccode\u003eInvoiceCreatePreviewParams.schedule_details.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionSchedule.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionScheduleCreateParams.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionScheduleUpdateParams.phases[].add_invoice_items[]\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.add_invoice_items[]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebilling_schedules\u003c/code\u003e on \u003ccode\u003eInvoiceCreatePreviewParams.subscription_details\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams\u003c/code\u003e, \u003ccode\u003eSubscriptionUpdateParams\u003c/code\u003e, and \u003ccode\u003eSubscription\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003emax_billed_until\u003c/code\u003e on enums \u003ccode\u003eInvoiceCreatePreviewParams.subscription_details.cancel_at\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.cancel_at\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.cancel_at\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eamount_paid_off_stripe\u003c/code\u003e on \u003ccode\u003eInvoice\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003etwint\u003c/code\u003e on enums \u003ccode\u003eInvoice.payment_settings.payment_method_types\u003c/code\u003e and \u003ccode\u003eSubscription.payment_settings.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003etwint\u003c/code\u003e on \u003ccode\u003eMandate.payment_method_details\u003c/code\u003e and \u003ccode\u003eSetupAttempt.payment_method_details\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003emetadata\u003c/code\u003e on \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003eSubscription.pending_update\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003epayment_data\u003c/code\u003e on \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003ePaymentIntent.excluded_payment_method_types\u003c/code\u003e and \u003ccode\u003eSetupIntent.excluded_payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eblik_authorize\u003c/code\u003e on \u003ccode\u003ePaymentIntent.next_action\u003c/code\u003e and \u003ccode\u003eSetupIntent.next_action\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003epayment_method_options\u003c/code\u003e on \u003ccode\u003ePaymentLinkCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentLinkUpdateParams\u003c/code\u003e, and \u003ccode\u003ePaymentLink\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003ebizum\u003c/code\u003e on enums \u003ccode\u003ePaymentLinkCreateParams.payment_method_types\u003c/code\u003e and \u003ccode\u003ePaymentLinkUpdateParams.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003ebizum\u003c/code\u003e on enum \u003ccode\u003ePaymentLink.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eactive\u003c/code\u003e on \u003ccode\u003ePaymentMethodConfigurationListParams\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebilled_until\u003c/code\u003e on \u003ccode\u003eSubscriptionItem\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ediscount\u003c/code\u003e and \u003ccode\u003ediscounts\u003c/code\u003e on \u003ccode\u003eSubscription.pending_update\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on \u003ccode\u003eTerminal.ConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003eTerminal.ConfigurationUpdateParams\u003c/code\u003e, and \u003ccode\u003eTerminal.Configuration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003esimulated_verifone_m425\u003c/code\u003e, \u003ccode\u003esimulated_verifone_p630\u003c/code\u003e, \u003ccode\u003esimulated_verifone_ux700\u003c/code\u003e, \u003ccode\u003esimulated_verifone_v660p\u003c/code\u003e, \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on enum \u003ccode\u003eTerminal.ReaderListParams.device_type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eapi_error\u003c/code\u003e and \u003ccode\u003eprint_content\u003c/code\u003e on \u003ccode\u003eTerminal.Reader.action\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eprint_content\u003c/code\u003e on enum \u003ccode\u003eTerminal.Reader.action.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003esimulated_verifone_m425\u003c/code\u003e, \u003ccode\u003esimulated_verifone_p630\u003c/code\u003e, \u003ccode\u003esimulated_verifone_ux700\u003c/code\u003e, \u003ccode\u003esimulated_verifone_v660p\u003c/code\u003e, \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on enum \u003ccode\u003eTerminal.Reader.device_type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecustomer\u003c/code\u003e on \u003ccode\u003eTestHelpers.TestClockCreateParams\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003e2026-05-27.dahlia\u003c/code\u003e on enum \u003ccode\u003eWebhookEndpointCreateParams.api_version\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003esigner\u003c/code\u003e on \u003ccode\u003eV2.Core.Account.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.Account.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountCreateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountCreateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountTokenCreateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountTokenCreateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountUpdateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, and \u003ccode\u003eV2.Core.AccountUpdateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eazure_event_grid\u003c/code\u003e on \u003ccode\u003eV2.Core.EventDestinationCreateParams\u003c/code\u003e and \u003ccode\u003eV2.Core.EventDestination\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eno_azure_partner_topic_exists\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestination.status_details.disabled.reason\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eazure_event_grid\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestination.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003eazure_event_grid\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestinationCreateParams.type\u003c/code\u003e\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/stripe/stripe-node/blob/master/CHANGELOG.md\"\u003estripe's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e22.2.0 - 2026-05-27\u003c/h2\u003e\n\u003cp\u003eThis release changes the pinned API version to 2026-05-27.dahlia.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/stripe/stripe-node/pull/2710\"\u003e#2710\u003c/a\u003e Update generated code\n\u003cul\u003e\n\u003cli\u003eAdd support for new resource \u003ccode\u003eV2.Commerce.ProductCatalogImport\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecreate\u003c/code\u003e and \u003ccode\u003eretrieve\u003c/code\u003e methods on resource \u003ccode\u003eV2.Commerce.ProductCatalogImport\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebizum_payments\u003c/code\u003e and \u003ccode\u003escalapay_payments\u003c/code\u003e on \u003ccode\u003eAccount.capabilities\u003c/code\u003e, \u003ccode\u003eAccountCreateParams.capabilities\u003c/code\u003e, and \u003ccode\u003eAccountUpdateParams.capabilities\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eautomatic_transfer_rules_by_currency\u003c/code\u003e on \u003ccode\u003eBalanceSettingUpdateParams.payments.payouts\u003c/code\u003e and \u003ccode\u003eBalanceSettings.payments.payouts\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003estart_of_day\u003c/code\u003e on \u003ccode\u003eBalanceSettingUpdateParams.payments.settlement_timing\u003c/code\u003e and \u003ccode\u003eBalanceSettings.payments.settlement_timing\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003edescription\u003c/code\u003e on \u003ccode\u003eChargeCreateParams.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebizum\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details\u003c/code\u003e, \u003ccode\u003eConfirmationToken.payment_method_preview\u003c/code\u003e, \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003ePaymentIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationUpdateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfiguration\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethod\u003c/code\u003e, \u003ccode\u003ePaymentRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003eSetupIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eSetupIntentUpdateParams.payment_method_data\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_options\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003escalapay\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details\u003c/code\u003e, \u003ccode\u003eCheckout.Session.payment_method_options\u003c/code\u003e, \u003ccode\u003eCheckout.SessionCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003eConfirmationToken.payment_method_preview\u003c/code\u003e, \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003ePaymentIntent.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfigurationUpdateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethodConfiguration\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentMethod\u003c/code\u003e, \u003ccode\u003ePaymentRecord.payment_method_details\u003c/code\u003e, \u003ccode\u003eRefund.destination_details\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003emandate\u003c/code\u003e on \u003ccode\u003eCharge.payment_method_details.twint\u003c/code\u003e, \u003ccode\u003ePaymentAttemptRecord.payment_method_details.twint\u003c/code\u003e, and \u003ccode\u003ePaymentRecord.payment_method_details.twint\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eCheckout.SessionCreateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.excluded_payment_method_types\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.excluded_payment_method_types\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.excluded_payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eChange type of \u003ccode\u003eCheckout.SessionCreateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.payment_method_options.twint.setup_future_usage\u003c/code\u003e from \u003ccode\u003eliteral('none')\u003c/code\u003e to \u003ccode\u003eenum('none'|'off_session')\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enum \u003ccode\u003eCheckout.SessionCreateParams.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Change type of \u003ccode\u003eCheckout.Session.payment_method_options.twint.setup_future_usage\u003c/code\u003e and \u003ccode\u003ePaymentIntent.payment_method_options.twint.setup_future_usage\u003c/code\u003e from \u003ccode\u003eliteral('none')\u003c/code\u003e to \u003ccode\u003eenum('none'|'off_session')\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eConfirmationTokenCreateParams.testHelpers.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentConfirmParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003eSetupIntentConfirmParams.payment_method_data.type\u003c/code\u003e, \u003ccode\u003eSetupIntentCreateParams.payment_method_data.type\u003c/code\u003e, and \u003ccode\u003eSetupIntentUpdateParams.payment_method_data.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eConfirmationToken.payment_method_preview.type\u003c/code\u003e and \u003ccode\u003ePaymentMethod.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003eCustomerListPaymentMethodsParams.type\u003c/code\u003e, \u003ccode\u003ePaymentMethodCreateParams.type\u003c/code\u003e, and \u003ccode\u003ePaymentMethodListParams.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecredited_items\u003c/code\u003e on \u003ccode\u003eInvoiceItem.proration_details\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003etwint\u003c/code\u003e on enums \u003ccode\u003eInvoiceCreateParams.payment_settings.payment_method_types\u003c/code\u003e, \u003ccode\u003eInvoiceUpdateParams.payment_settings.payment_method_types\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.payment_settings.payment_method_types\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.payment_settings.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ediscountable\u003c/code\u003e on \u003ccode\u003eInvoiceCreatePreviewParams.schedule_details.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionSchedule.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionScheduleCreateParams.phases[].add_invoice_items[]\u003c/code\u003e, \u003ccode\u003eSubscriptionScheduleUpdateParams.phases[].add_invoice_items[]\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.add_invoice_items[]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebilling_schedules\u003c/code\u003e on \u003ccode\u003eInvoiceCreatePreviewParams.subscription_details\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams\u003c/code\u003e, \u003ccode\u003eSubscriptionUpdateParams\u003c/code\u003e, and \u003ccode\u003eSubscription\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003emax_billed_until\u003c/code\u003e on enums \u003ccode\u003eInvoiceCreatePreviewParams.subscription_details.cancel_at\u003c/code\u003e, \u003ccode\u003eSubscriptionCreateParams.cancel_at\u003c/code\u003e, and \u003ccode\u003eSubscriptionUpdateParams.cancel_at\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eamount_paid_off_stripe\u003c/code\u003e on \u003ccode\u003eInvoice\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003etwint\u003c/code\u003e on enums \u003ccode\u003eInvoice.payment_settings.payment_method_types\u003c/code\u003e and \u003ccode\u003eSubscription.payment_settings.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003etwint\u003c/code\u003e on \u003ccode\u003eMandate.payment_method_details\u003c/code\u003e and \u003ccode\u003eSetupAttempt.payment_method_details\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003emetadata\u003c/code\u003e on \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003eSubscription.pending_update\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003epayment_data\u003c/code\u003e on \u003ccode\u003ePaymentIntent.transfer_data\u003c/code\u003e, \u003ccode\u003ePaymentIntentCreateParams.transfer_data\u003c/code\u003e, and \u003ccode\u003ePaymentIntentUpdateParams.transfer_data\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003ebizum\u003c/code\u003e and \u003ccode\u003escalapay\u003c/code\u003e on enums \u003ccode\u003ePaymentIntent.excluded_payment_method_types\u003c/code\u003e and \u003ccode\u003eSetupIntent.excluded_payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eblik_authorize\u003c/code\u003e on \u003ccode\u003ePaymentIntent.next_action\u003c/code\u003e and \u003ccode\u003eSetupIntent.next_action\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003epayment_method_options\u003c/code\u003e on \u003ccode\u003ePaymentLinkCreateParams\u003c/code\u003e, \u003ccode\u003ePaymentLinkUpdateParams\u003c/code\u003e, and \u003ccode\u003ePaymentLink\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003ebizum\u003c/code\u003e on enums \u003ccode\u003ePaymentLinkCreateParams.payment_method_types\u003c/code\u003e and \u003ccode\u003ePaymentLinkUpdateParams.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003ebizum\u003c/code\u003e on enum \u003ccode\u003ePaymentLink.payment_method_types\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eactive\u003c/code\u003e on \u003ccode\u003ePaymentMethodConfigurationListParams\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ebilled_until\u003c/code\u003e on \u003ccode\u003eSubscriptionItem\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ediscount\u003c/code\u003e and \u003ccode\u003ediscounts\u003c/code\u003e on \u003ccode\u003eSubscription.pending_update\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on \u003ccode\u003eTerminal.ConfigurationCreateParams\u003c/code\u003e, \u003ccode\u003eTerminal.ConfigurationUpdateParams\u003c/code\u003e, and \u003ccode\u003eTerminal.Configuration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new values \u003ccode\u003esimulated_verifone_m425\u003c/code\u003e, \u003ccode\u003esimulated_verifone_p630\u003c/code\u003e, \u003ccode\u003esimulated_verifone_ux700\u003c/code\u003e, \u003ccode\u003esimulated_verifone_v660p\u003c/code\u003e, \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on enum \u003ccode\u003eTerminal.ReaderListParams.device_type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eapi_error\u003c/code\u003e and \u003ccode\u003eprint_content\u003c/code\u003e on \u003ccode\u003eTerminal.Reader.action\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eprint_content\u003c/code\u003e on enum \u003ccode\u003eTerminal.Reader.action.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new values \u003ccode\u003esimulated_verifone_m425\u003c/code\u003e, \u003ccode\u003esimulated_verifone_p630\u003c/code\u003e, \u003ccode\u003esimulated_verifone_ux700\u003c/code\u003e, \u003ccode\u003esimulated_verifone_v660p\u003c/code\u003e, \u003ccode\u003everifone_m425\u003c/code\u003e, \u003ccode\u003everifone_p630\u003c/code\u003e, \u003ccode\u003everifone_ux700\u003c/code\u003e, and \u003ccode\u003everifone_v660p\u003c/code\u003e on enum \u003ccode\u003eTerminal.Reader.device_type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003ecustomer\u003c/code\u003e on \u003ccode\u003eTestHelpers.TestClockCreateParams\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003e2026-05-27.dahlia\u003c/code\u003e on enum \u003ccode\u003eWebhookEndpointCreateParams.api_version\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003esigner\u003c/code\u003e on \u003ccode\u003eV2.Core.Account.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.Account.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountCreateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountCreateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountTokenCreateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountTokenCreateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e, \u003ccode\u003eV2.Core.AccountUpdateParams.identity.business_details.documents.proof_of_registration\u003c/code\u003e, and \u003ccode\u003eV2.Core.AccountUpdateParams.identity.business_details.documents.proof_of_ultimate_beneficial_ownership\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eazure_event_grid\u003c/code\u003e on \u003ccode\u003eV2.Core.EventDestinationCreateParams\u003c/code\u003e and \u003ccode\u003eV2.Core.EventDestination\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eno_azure_partner_topic_exists\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestination.status_details.disabled.reason\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e⚠️ Add support for new value \u003ccode\u003eazure_event_grid\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestination.type\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for new value \u003ccode\u003eazure_event_grid\u003c/code\u003e on enum \u003ccode\u003eV2.Core.EventDestinationCreateParams.type\u003c/code\u003e\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/22c7136dd1ac5ad63e905b9a560a37fb00993fc8\"\u003e\u003ccode\u003e22c7136\u003c/code\u003e\u003c/a\u003e Bump version to 22.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/312514c819ffd2dc690f5e0265b98667c4211857\"\u003e\u003ccode\u003e312514c\u003c/code\u003e\u003c/a\u003e Update generated code (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2710\"\u003e#2710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/c68495777fcb5af914688663d13f26285c79ab6b\"\u003e\u003ccode\u003ec684957\u003c/code\u003e\u003c/a\u003e Emit warning when \u003ccode\u003estripe-notify\u003c/code\u003e header is present in response (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2723\"\u003e#2723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/6daca1e550c6019ef3bf3d766b5f50d7bd101efd\"\u003e\u003ccode\u003e6daca1e\u003c/code\u003e\u003c/a\u003e Add V2List and V2ListPromise types for v2 list endpoints (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2717\"\u003e#2717\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/044c68e8908d5c93db7a76ca93a07557d5148420\"\u003e\u003ccode\u003e044c68e\u003c/code\u003e\u003c/a\u003e Add WinterTC compatibility ESLint rule (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2715\"\u003e#2715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/185f336fe42aba87a1eb8533299e4a760e82021e\"\u003e\u003ccode\u003e185f336\u003c/code\u003e\u003c/a\u003e Export manually maintained types for OAuthToken and OAuth param classes (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2711\"\u003e#2711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/stripe/stripe-node/commit/0a91ffd7b2e41dea5698eea7013673764f7574a8\"\u003e\u003ccode\u003e0a91ffd\u003c/code\u003e\u003c/a\u003e Exported types for nested param classes (\u003ca href=\"https://redirect.github.com/stripe/stripe-node/issues/2712\"\u003e#2712\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/stripe/stripe-node/compare/v22.1.1...v22.2.0\"\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 `@react-native-async-storage/async-storage` from 3.0.2 to 3.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/react-native-async-storage/async-storage/releases\"\u003e@​react-native-async-storage/async-storage's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eAsync Storage v3.1.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eb751ff4: bump native dependencies for sqlite and room\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAsync Storage v3.1.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efa6d5bc: Shared Storage artifact published to maven central\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis eliminates the extra step in installation for android.\u003c/p\u003e\n\u003ch2\u003eAsync Storage v3.0.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cp\u003e350e149:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCorrectly handle \u0026quot;other\u0026quot; error for Apple platforms\u003c/li\u003e\n\u003cli\u003eAndroid to use limited parallelism from DispatcherIO, instead of using dedicated thread pools per database\u003c/li\u003e\n\u003cli\u003eWhen providing null for a key, for some reason, throw an error instead of crashing the app\u003c/li\u003e\n\u003cli\u003eMake example RN example work again\u003c/li\u003e\n\u003cli\u003eUse concurrent hashmap instead of hashmap + synchronization combo for Storage initialization on Android\u003c/li\u003e\n\u003cli\u003eDouble check lock for legacy storage initialization on android\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/react-native-async-storage/async-storage/blob/main/packages/async-storage/CHANGELOG.md\"\u003e@​react-native-async-storage/async-storage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.1.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eb751ff4: bump native dependencies for sqlite and room\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.1.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efa6d5bc: Shared Storage artifact published to maven central\u003c/p\u003e\n\u003cp\u003eThis eliminates the extra step in installation for android.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e350e149: - Correctly handle \u0026quot;other\u0026quot; error for Apple platforms\n\u003cul\u003e\n\u003cli\u003eAndroid to use limited parallelism from DispatcherIO, instead of using dedicated thread pools per database\u003c/li\u003e\n\u003cli\u003eWhen providing null for a key, for some reason, throw an error instead of crashing the app\u003c/li\u003e\n\u003cli\u003eMake example RN example work again\u003c/li\u003e\n\u003cli\u003eUse concurrent hashmap instead of hashmap + synchronization combo for Storage initialization on Android\u003c/li\u003e\n\u003cli\u003eDouble check lock for legacy storage initialization on android\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/react-native-async-storage/async-storage/commit/4535ff0728207221a5831ed59dcebab1e4fba33e\"\u003e\u003ccode\u003e4535ff0\u003c/code\u003e\u003c/a\u003e release: version packages (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1309\"\u003e#1309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/b751ff4ad97d306ba7f0b694b10e0280e9eb80ac\"\u003e\u003ccode\u003eb751ff4\u003c/code\u003e\u003c/a\u003e chore(shared-storage): Bump native dependencies (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1308\"\u003e#1308\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/cb61cac1c2613d8f4caa89e34e4dccbd9958a2cf\"\u003e\u003ccode\u003ecb61cac\u003c/code\u003e\u003c/a\u003e release: version packages (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/fa6d5bc0f46d11edb5fbcf326f699b3061571d92\"\u003e\u003ccode\u003efa6d5bc\u003c/code\u003e\u003c/a\u003e feat: Use Shared Storage from Maven Central (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1301\"\u003e#1301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/d5fb009fb4950ca2b4acc4ad789a7268b901b23b\"\u003e\u003ccode\u003ed5fb009\u003c/code\u003e\u003c/a\u003e feat: Distribute shared-storage via Maven Central (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1299\"\u003e#1299\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/5f005c61a1d15007bc082b584e85c7be49d9aa7b\"\u003e\u003ccode\u003e5f005c6\u003c/code\u003e\u003c/a\u003e release: version packages (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1293\"\u003e#1293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-native-async-storage/async-storage/commit/350e149aed3e36e6e036a2d9b35ce32bb5c8c638\"\u003e\u003ccode\u003e350e149\u003c/code\u003e\u003c/a\u003e fix: Thread-safety fixes, broken example app (\u003ca href=\"https://github.com/react-native-async-storage/async-storage/tree/HEAD/packages/async-storage/issues/1292\"\u003e#1292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/react-native-async-storage/async-storage/commits/@react-native-async-storage/async-storage@3.1.1/packages/async-storage\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@react-navigation/bottom-tabs` from 7.15.13 to 7.16.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/react-navigation/react-navigation/releases\"\u003e@​react-navigation/bottom-tabs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​react-navigation/bottom-tabs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.16.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@7.16.1...@react-navigation/bottom-tabs@7.16.2\"\u003e7.16.2\u003c/a\u003e (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edefault lazy to true for native tabs to avoid flicker (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/ca4ac561a7f1d13cbec675a5e6af056041a6cfcf\"\u003eca4ac56\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​react-navigation/bottom-tabs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.16.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@7.15.13...@react-navigation/bottom-tabs@7.16.0\"\u003e7.16.0\u003c/a\u003e (2026-05-11)\u003c/h1\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edefault \u003ccode\u003emultiselectable\u003c/code\u003e to \u003ccode\u003eundefined\u003c/code\u003e (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/cd466d48aeefec6e513bb6c8d5103d15f9d73f7f\"\u003ecd466d4\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd ability to prevent tab bar selection (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/1930fa0d3c8d266d8b288b2da92c04f758f82571\"\u003e1930fa0\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eupdate native tabs to use the new API in react-native-screens (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/a12db9657f5f2af2a0aaa71193e35382dc72a623\"\u003ea12db96\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\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/react-navigation/react-navigation/blob/@react-navigation/bottom-tabs@7.16.2/packages/bottom-tabs/CHANGELOG.md\"\u003e@​react-navigation/bottom-tabs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@7.16.1...@react-navigation/bottom-tabs@7.16.2\"\u003e7.16.2\u003c/a\u003e (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edefault lazy to true for native tabs to avoid flicker (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/ca4ac561a7f1d13cbec675a5e6af056041a6cfcf\"\u003eca4ac56\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@7.16.0...@react-navigation/bottom-tabs@7.16.1\"\u003e7.16.1\u003c/a\u003e (2026-05-14)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​react-navigation/bottom-tabs\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/bottom-tabs@7.15.13...@react-navigation/bottom-tabs@7.16.0\"\u003e7.16.0\u003c/a\u003e (2026-05-11)\u003c/h1\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edefault \u003ccode\u003emultiselectable\u003c/code\u003e to \u003ccode\u003eundefined\u003c/code\u003e (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/cd466d48aeefec6e513bb6c8d5103d15f9d73f7f\"\u003ecd466d4\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd ability to prevent tab bar selection (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/1930fa0d3c8d266d8b288b2da92c04f758f82571\"\u003e1930fa0\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eupdate native tabs to use the new API in react-native-screens (\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/a12db9657f5f2af2a0aaa71193e35382dc72a623\"\u003ea12db96\u003c/a\u003e) - by \u003ca href=\"https://github.com/satya164\"\u003e\u003ccode\u003e@​satya164\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/react-navigation/react-navigation/commit/b89bba20b9d6d935224dd5afa287f62a627b6c7e\"\u003e\u003ccode\u003eb89bba2\u003c/code\u003e\u003c/a\u003e chore: publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/ca4ac561a7f1d13cbec675a5e6af056041a6cfcf\"\u003e\u003ccode\u003eca4ac56\u003c/code\u003e\u003c/a\u003e fix: default lazy to true for native tabs to avoid flicker\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/8e0ce2be919f84b3d9fa2d2db2587e0a7a4c50ce\"\u003e\u003ccode\u003e8e0ce2b\u003c/code\u003e\u003c/a\u003e chore: publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/b5b1f7cc35c17b5ef113db0fdcd27794f52a48cc\"\u003e\u003ccode\u003eb5b1f7c\u003c/code\u003e\u003c/a\u003e chore: publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/cd466d48aeefec6e513bb6c8d5103d15f9d73f7f\"\u003e\u003ccode\u003ecd466d4\u003c/code\u003e\u003c/a\u003e fix: default \u003ccode\u003emultiselectable\u003c/code\u003e to \u003ccode\u003eundefined\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/1930fa0d3c8d266d8b288b2da92c04f758f82571\"\u003e\u003ccode\u003e1930fa0\u003c/code\u003e\u003c/a\u003e feat: add ability to prevent tab bar selection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/commit/a12db9657f5f2af2a0aaa71193e35382dc72a623\"\u003e\u003ccode\u003ea12db96\u003c/code\u003e\u003c/a\u003e feat: update native tabs to use the new API in react-native-screens\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/react-navigation/react-navigation/commits/@react-navigation/bottom-tabs@7.16.2/packages/bottom-tabs\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@react-navigation/native` from 7.2.4 to 7.2.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/react-navigation/react-navigation/blob/@react-navigation/native@7.2.5/packages/native/CHANGELOG.md\"\u003e@​react-navigation/native's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/react-navigation/react-navigation/compare/@react-navigation/native@7.2.4...@react-navigation/native@7.2.5\"\u003e7.2.5\u003c/a\u003e (2026-05-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​react-navigation/native\u003c/code\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/react-navigation/react-navigation/commit/b89bba20b9d6d935224dd5afa287f62a627b6c7e\"\u003e\u003ccode\u003eb89bba2\u003c/code\u003e\u003c/a\u003e chore: publish\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/react-navigation/react-navigation/commits/@react-navigation/native@7.2.5/packages/native\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@supabase/supabase-js` from 2.105.4 to 2.106.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/supabase/supabase-js/releases\"\u003e@​supabase/supabase-js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.106.2\u003c/h2\u003e\n\u003ch2\u003e2.106.2 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eauth:\u003c/strong\u003e restore signup user response (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2391\"\u003e#2391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emisc:\u003c/strong\u003e add react-native export condition for Hermes-safe resolution (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2393\"\u003e#2393\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMyroslav Hryhschenko \u003ca href=\"https://github.com/BLOCKMATERIAL\"\u003e\u003ccode\u003e@​BLOCKMATERIAL\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVaibhav \u003ca href=\"https://github.com/7ttp\"\u003e\u003ccode\u003e@​7ttp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.106.2-canary.1\u003c/h2\u003e\n\u003ch2\u003e2.106.2-canary.1 (2026-05-22)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003ch2\u003ev2.106.2-canary.0\u003c/h2\u003e\n\u003ch2\u003e2.106.2-canary.0 (2026-05-22)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eauth:\u003c/strong\u003e restore signup user response (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2391\"\u003e#2391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emisc:\u003c/strong\u003e add react-native export condition for Hermes-safe resolution (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2393\"\u003e#2393\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMyroslav Hryhschenko \u003ca href=\"https://github.com/BLOCKMATERIAL\"\u003e\u003ccode\u003e@​BLOCKMATERIAL\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eVaibhav \u003ca href=\"https://github.com/7ttp\"\u003e\u003ccode\u003e@​7ttp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.106.2-beta.2\u003c/h2\u003e\n\u003ch2\u003e2.106.2-beta.2 (2026-05-22)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003ch2\u003ev2.106.2-beta.0\u003c/h2\u003e\n\u003ch2\u003e2.106.2-beta.0 (2026-05-21)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003ch2\u003ev2.106.1\u003c/h2\u003e\n\u003ch2\u003e2.106.1 (2026-05-20)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eauth:\u003c/strong\u003e encode client-id in oauth requests (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2383\"\u003e#2383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emisc:\u003c/strong\u003e hide dynamic import from hermesc (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2381\"\u003e#2381\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/supabase/supabase-js/blob/master/packages/core/supabase-js/CHANGELOG.md\"\u003e@​supabase/supabase-js's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.106.2 (2026-05-25)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003emisc:\u003c/strong\u003e add react-native export condition for Hermes-safe resolution (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2393\"\u003e#2393\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMyroslav Hryhschenko \u003ca href=\"https://github.com/BLOCKMATERIAL\"\u003e\u003ccode\u003e@​BLOCKMATERIAL\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.106.1 (2026-05-20)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003emisc:\u003c/strong\u003e hide dynamic import from hermesc (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2381\"\u003e#2381\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKaterina Skroumpelou \u003ca href=\"https://github.com/mandarini\"\u003e\u003ccode\u003e@​mandarini\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.106.0 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003esupabase:\u003c/strong\u003e W3C/OpenTelemetry trace context propagation (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2163\"\u003e#2163\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erelease:\u003c/strong\u003e mark \u003ccode\u003e@​supabase/tracing\u003c/code\u003e private and snapshot it for JSR (\u003ca href=\"https://redirect.github...\n\n_Description has been truncated_","html_url":"https://github.com/crewcircle/crewRoster/pull/66","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/crewcircle%2FcrewRoster/issues/66","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/66/packages"}},{"old_version":"1.59.1","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-31T02:24:37.000Z","version_change":"1.59.1 → 1.60.0","issue":{"uuid":"4556332784","node_id":"PR_kwDOResPl87hCDlK","number":68,"state":"open","title":"chore(deps): bump the dependencies group across 1 directory with 27 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-31T02:24:37.000Z","updated_at":"2026-05-31T02:24:45.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"dependencies","update_count":27,"packages":[{"name":"posthog-js","old_version":"1.373.4","new_version":"1.376.4","repository_url":"https://github.com/PostHog/posthog-js"},{"name":"posthog-node","old_version":"5.33.7","new_version":"5.35.6","repository_url":"https://github.com/PostHog/posthog-js"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@rolldown/binding-linux-x64-gnu","old_version":"1.0.0-rc.17","new_version":"1.0.3","repository_url":"https://github.com/rolldown/rolldown"},{"name":"@rollup/rollup-linux-x64-gnu","old_version":"4.60.1","new_version":"4.60.4","repository_url":"https://github.com/rollup/rollup"},{"name":"@sentry/cli-linux-x64","old_version":"2.58.5","new_version":"3.4.3","repository_url":"https://github.com/getsentry/sentry-cli"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@clerk/localizations","old_version":"4.6.0","new_version":"4.7.0","repository_url":"https://github.com/clerk/javascript"},{"name":"@clerk/nextjs","old_version":"7.3.1","new_version":"7.4.2","repository_url":"https://github.com/clerk/javascript"},{"name":"@sentry/nextjs","old_version":"10.51.0","new_version":"10.55.0","repository_url":"https://github.com/getsentry/sentry-javascript"},{"name":"@supabase/supabase-js","old_version":"2.105.3","new_version":"2.106.2","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@upstash/qstash","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/upstash/qstash-js"},{"name":"date-fns","old_version":"4.1.0","new_version":"4.4.0","repository_url":"https://github.com/date-fns/date-fns"},{"name":"framer-motion","old_version":"12.38.0","new_version":"12.40.0","repository_url":"https://github.com/motiondivision/motion"},{"name":"lucide-react","old_version":"1.14.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react-big-calendar","old_version":"1.19.4","new_version":"1.19.6","repository_url":"https://github.com/bigcalendar/react-big-calendar"},{"name":"resend","old_version":"6.12.2","new_version":"6.12.4","repository_url":"https://github.com/resend/resend-node"},{"name":"stripe","old_version":"22.1.0","new_version":"22.2.0","repository_url":"https://github.com/stripe/stripe-node"},{"name":"swiper","old_version":"12.1.4","new_version":"12.2.0","repository_url":"https://github.com/nolimits4web/Swiper"},{"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.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@types/node","old_version":"25.6.0","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"eslint","old_version":"9.39.4","new_version":"10.4.1","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-config-next","old_version":"16.2.4","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"vitest","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"}],"path":null,"ecosystem":"npm"},"body":"Bumps the dependencies group with 25 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [posthog-js](https://github.com/PostHog/posthog-js) | `1.373.4` | `1.376.4` |\n| [posthog-node](https://github.com/PostHog/posthog-js/tree/HEAD/packages/node) | `5.33.7` | `5.35.6` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [@rolldown/binding-linux-x64-gnu](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown) | `1.0.0-rc.17` | `1.0.3` |\n| [@rollup/rollup-linux-x64-gnu](https://github.com/rollup/rollup) | `4.60.1` | `4.60.4` |\n| [@sentry/cli-linux-x64](https://github.com/getsentry/sentry-cli) | `2.58.5` | `3.4.3` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.4` | `4.3.0` |\n| [@clerk/localizations](https://github.com/clerk/javascript/tree/HEAD/packages/localizations) | `4.6.0` | `4.7.0` |\n| [@clerk/nextjs](https://github.com/clerk/javascript/tree/HEAD/packages/nextjs) | `7.3.1` | `7.4.2` |\n| [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) | `10.51.0` | `10.55.0` |\n| [@supabase/supabase-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js) | `2.105.3` | `2.106.2` |\n| [@upstash/qstash](https://github.com/upstash/qstash-js) | `2.10.1` | `2.11.0` |\n| [date-fns](https://github.com/date-fns/date-fns) | `4.1.0` | `4.4.0` |\n| [framer-motion](https://github.com/motiondivision/motion) | `12.38.0` | `12.40.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.14.0` | `1.17.0` |\n| [react-big-calendar](https://github.com/bigcalendar/react-big-calendar) | `1.19.4` | `1.19.6` |\n| [resend](https://github.com/resend/resend-node) | `6.12.2` | `6.12.4` |\n| [stripe](https://github.com/stripe/stripe-node) | `22.1.0` | `22.2.0` |\n| [swiper](https://github.com/nolimits4web/Swiper) | `12.1.4` | `12.2.0` |\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.4` | `4.3.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.6.0` | `25.9.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.4` | `10.4.1` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.2.4` | `16.2.6` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.5` | `4.1.7` |\n\n\nUpdates `posthog-js` from 1.373.4 to 1.376.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PostHog/posthog-js/releases\"\u003eposthog-js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eposthog-js@1.376.4\u003c/h2\u003e\n\u003ch2\u003e1.376.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/PostHog/posthog-js/pull/3685\"\u003e#3685\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/f59f35ac5a6a0aa98be5f3ea3b88370df8d398aa\"\u003e\u003ccode\u003ef59f35a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ioannisj\"\u003e\u003ccode\u003e@​ioannisj\u003c/code\u003e\u003c/a\u003e! - fix(cookieless): enable request queue when opting out in \u003ccode\u003eon_reject\u003c/code\u003e mode. When using \u003ccode\u003ecookieless_mode: \u0026quot;on_reject\u0026quot;\u003c/code\u003e, calling \u003ccode\u003eopt_out_capturing()\u003c/code\u003e correctly switched the SDK into cookieless capturing but never enabled the \u003ccode\u003eRequestQueue\u003c/code\u003e — so batched events were enqueued but never flushed over the network. At init time the queue was not started because consent was \u003ccode\u003ePENDING\u003c/code\u003e and \u003ccode\u003eis_capturing()\u003c/code\u003e returned \u003ccode\u003efalse\u003c/code\u003e; \u003ccode\u003eopt_out_capturing()\u003c/code\u003e is the first moment capturing becomes active but was missing the \u003ccode\u003e_start_queue_if_opted_in()\u003c/code\u003e call that \u003ccode\u003eopt_in_capturing()\u003c/code\u003e already had.\n(2026-05-28)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3692\"\u003e#3692\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/f01cd939e096820b84666a463a61775ef69ce4c4\"\u003e\u003ccode\u003ef01cd93\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ksvat\"\u003e\u003ccode\u003e@​ksvat\u003c/code\u003e\u003c/a\u003e! - fix(replay): take a fresh full snapshot after session ID rotates via \u003ccode\u003eforcedIdleReset\u003c/code\u003e. Previously, when the session manager's idle enforcement timer rotated the session id, the recorder tore down rrweb and set \u003ccode\u003e_isIdle = 'unknown'\u003c/code\u003e before the new session id was observed. Neither restart path then fired (the \u003ccode\u003e_onSessionIdCallback\u003c/code\u003e guard only restarted when \u003ccode\u003e_isIdle === true\u003c/code\u003e, and \u003ccode\u003e_updateWindowAndSessionIds\u003c/code\u003e could not run with rrweb stopped), so the new session received only incremental mutations until a later snapshot — leaving the player stuck on \u0026quot;Buffering\u0026quot;. The restart guard now also fires when rrweb isn't running.\n(2026-05-28)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3691\"\u003e#3691\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/cc71f3fa1f87838c28a68e593cd3f274f63db397\"\u003e\u003ccode\u003ecc71f3f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ksvat\"\u003e\u003ccode\u003e@​ksvat\u003c/code\u003e\u003c/a\u003e! - fix(replay): ship \u003ccode\u003eph-no-capture\u003c/code\u003e absolute-position fix from \u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3678\"\u003e#3678\u003c/a\u003e to \u003ccode\u003eposthog-js\u003c/code\u003e. The original changeset only bumped \u003ccode\u003e@posthog/rrweb\u003c/code\u003e and \u003ccode\u003e@posthog/rrweb-snapshot\u003c/code\u003e; because \u003ccode\u003eposthog-js\u003c/code\u003e depends on \u003ccode\u003e@posthog/rrweb\u003c/code\u003e via \u003ccode\u003eworkspace:*\u003c/code\u003e, the cascade did not bump \u003ccode\u003eposthog-js\u003c/code\u003e, so the rebuilt bundle containing the fix was not published. This changeset re-publishes \u003ccode\u003eposthog-js\u003c/code\u003e with the fix.\n(2026-05-28)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3695\"\u003e#3695\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/e1ff722bf0bd333ffdf5d077f8f60893aaf7ef5e\"\u003e\u003ccode\u003ee1ff722\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ksvat\"\u003e\u003ccode\u003e@​ksvat\u003c/code\u003e\u003c/a\u003e! - chore(replay): expose \u003ccode\u003e$sdk_debug_rrweb_attached\u003c/code\u003e and \u003ccode\u003e$sdk_debug_rrweb_start_attempted\u003c/code\u003e debug properties on captured events. Today the SDK already stamps several \u003ccode\u003e$sdk_debug_*\u003c/code\u003e properties (start reason, linked-flag trigger status, recording status) that report the SDK's \u003cem\u003eintent\u003c/em\u003e to record — they all flip to \u0026quot;active\u0026quot; as soon as the state machine evaluates the configured triggers. None of them observe whether rrweb actually attached and is producing events. The new booleans close that gap: \u003ccode\u003e$sdk_debug_rrweb_start_attempted\u003c/code\u003e is set when \u003ccode\u003e_startRecorder()\u003c/code\u003e is first entered, and \u003ccode\u003e$sdk_debug_rrweb_attached\u003c/code\u003e reflects whether \u003ccode\u003e_stopRrweb\u003c/code\u003e is currently a non-falsy stop handle (i.e. \u003ccode\u003errwebRecord({...})\u003c/code\u003e returned successfully and the recorder has not been torn down). No behavior change — this only adds two booleans to the existing \u003ccode\u003esdkDebugProperties\u003c/code\u003e channel, used to diagnose cases where a session reports \u003ccode\u003etrigger_activated\u003c/code\u003e / \u003ccode\u003erecording_status: active\u003c/code\u003e but no \u003ccode\u003e$snapshot\u003c/code\u003e data is ever uploaded.\n(2026-05-28)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/types\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.376.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-js@1.376.3\u003c/h2\u003e\n\u003ch2\u003e1.376.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3649\"\u003e#3649\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/9cac1f650ed994a067bbffc5ec16b6d4dc65254f\"\u003e\u003ccode\u003e9cac1f6\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/marandaneto\"\u003e\u003ccode\u003e@​marandaneto\u003c/code\u003e\u003c/a\u003e! - Improve console log serialization performance for large objects.\n(2026-05-27)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/types\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.376.3\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-js@1.376.2\u003c/h2\u003e\n\u003ch2\u003e1.376.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3667\"\u003e#3667\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/cafa9cc786a07613677ec16f2fc9f0c4e833a12c\"\u003e\u003ccode\u003ecafa9cc\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/pauldambra\"\u003e\u003ccode\u003e@​pauldambra\u003c/code\u003e\u003c/a\u003e! - fix(replay): stop polling preload-as-style \u003ccode\u003e\u0026lt;link\u0026gt;\u003c/code\u003e elements forever. Session recorder treated \u003ccode\u003e\u0026lt;link rel=\u0026quot;preload\u0026quot; as=\u0026quot;style\u0026quot; href=\u0026quot;*.css\u0026quot;\u0026gt;\u003c/code\u003e as if it were a stylesheet and waited for \u003ccode\u003elink.sheet\u003c/code\u003e to populate. Per spec preload links never instantiate a \u003ccode\u003eCSSStyleSheet\u003c/code\u003e, so the wait timed out, re-serialized the link, scheduled another wait, and leaked a \u003ccode\u003eload\u003c/code\u003e listener on every cycle — multiplying further on every real \u003ccode\u003eload\u003c/code\u003e event. Pages with Next.js-style CSS preloads accumulated thousands of active polling chains, saturating the main thread and freezing the tab on refocus\n(2026-05-26)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/types\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.376.2\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-js@1.376.1\u003c/h2\u003e\n\u003ch2\u003e1.376.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/5568f12f46b4ebb7539f261edddda2f695ba03a2\"\u003e\u003ccode\u003e5568f12\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.10\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/types\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.376.1\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/a12207094c7e7a9b72dbdb513ade41d46df0dcda\"\u003e\u003ccode\u003ea122070\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/714ffa5874aa230ab49783d2415d54b23ffa54a1\"\u003e\u003ccode\u003e714ffa5\u003c/code\u003e\u003c/a\u003e fix(convex): register refresh cron unconditionally (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3684\"\u003e#3684\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/e1ff722bf0bd333ffdf5d077f8f60893aaf7ef5e\"\u003e\u003ccode\u003ee1ff722\u003c/code\u003e\u003c/a\u003e fix(replay): add debugging logs for recorder (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3695\"\u003e#3695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/f01cd939e096820b84666a463a61775ef69ce4c4\"\u003e\u003ccode\u003ef01cd93\u003c/code\u003e\u003c/a\u003e fix(replay): fix idle session rotation race condition (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3692\"\u003e#3692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/e05aea556bcfb5f5de573a28762f1cdd46928d82\"\u003e\u003ccode\u003ee05aea5\u003c/code\u003e\u003c/a\u003e fix(core): stop leaking DOM globals into public type surface (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3693\"\u003e#3693\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/f59f35ac5a6a0aa98be5f3ea3b88370df8d398aa\"\u003e\u003ccode\u003ef59f35a\u003c/code\u003e\u003c/a\u003e fix(cookieless): enable request queue when opting out in on_reject mode (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3685\"\u003e#3685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/cc71f3fa1f87838c28a68e593cd3f274f63db397\"\u003e\u003ccode\u003ecc71f3f\u003c/code\u003e\u003c/a\u003e chore(replay): bump posthog-js (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3691\"\u003e#3691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e fix: unify capture exception (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3681\"\u003e#3681\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/8ade9cbdfe0490238e92f62bc5626e361853dfb6\"\u003e\u003ccode\u003e8ade9cb\u003c/code\u003e\u003c/a\u003e feat(mcp): scaffold \u003ccode\u003e@​posthog/mcp\u003c/code\u003e package (1/2) (\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/issues/3652\"\u003e#3652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/4b1231f72ebc5bb40a9e2ca16e631dc4e63e9599\"\u003e\u003ccode\u003e4b1231f\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PostHog/posthog-js/compare/posthog-js@1.373.4...posthog-js@1.376.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `posthog-node` from 5.33.7 to 5.35.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PostHog/posthog-js/releases\"\u003eposthog-node's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eposthog-node@5.35.6\u003c/h2\u003e\n\u003ch2\u003e5.35.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3681\"\u003e#3681\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ablaszkiewicz\"\u003e\u003ccode\u003e@​ablaszkiewicz\u003c/code\u003e\u003c/a\u003e! - unify captureException in posthog core\n(2026-05-28)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-node@5.35.5\u003c/h2\u003e\n\u003ch2\u003e5.35.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-node@5.35.4\u003c/h2\u003e\n\u003ch2\u003e5.35.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-node@5.35.3\u003c/h2\u003e\n\u003ch2\u003e5.35.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/5568f12f46b4ebb7539f261edddda2f695ba03a2\"\u003e\u003ccode\u003e5568f12\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-node@5.35.2\u003c/h2\u003e\n\u003ch2\u003e5.35.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3658\"\u003e#3658\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/5d7a2d336befb9c2b7be9ff1961d674623d33901\"\u003e\u003ccode\u003e5d7a2d3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavohstrassburger\"\u003e\u003ccode\u003e@​gustavohstrassburger\u003c/code\u003e\u003c/a\u003e! - Include group context in the $feature_flag_called deduplication key in _captureFlagCalledEventIfNeeded, so events fire independently per group combination.\n(2026-05-25)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eposthog-node@5.35.1\u003c/h2\u003e\n\u003ch2\u003e5.35.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/c806ccafdcc39b38e9554f8a17a8c2fbd3361dda\"\u003e\u003ccode\u003ec806cca\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.9\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/PostHog/posthog-js/blob/main/packages/node/CHANGELOG.md\"\u003eposthog-node's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.35.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3681\"\u003e#3681\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ablaszkiewicz\"\u003e\u003ccode\u003e@​ablaszkiewicz\u003c/code\u003e\u003c/a\u003e! - unify captureException in posthog core\n(2026-05-28)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/5568f12f46b4ebb7539f261edddda2f695ba03a2\"\u003e\u003ccode\u003e5568f12\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3658\"\u003e#3658\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/5d7a2d336befb9c2b7be9ff1961d674623d33901\"\u003e\u003ccode\u003e5d7a2d3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavohstrassburger\"\u003e\u003ccode\u003e@​gustavohstrassburger\u003c/code\u003e\u003c/a\u003e! - Include group context in the $feature_flag_called deduplication key in _captureFlagCalledEventIfNeeded, so events fire independently per group combination.\n(2026-05-25)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/PostHog/posthog-js/commit/c806ccafdcc39b38e9554f8a17a8c2fbd3361dda\"\u003e\u003ccode\u003ec806cca\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​posthog/core\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.29.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.35.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/PostHog/posthog-js/pull/3642\"\u003e#3642\u003c/a\u003e \u003ca href=\"https://github.com/PostHog/posthog-js/commit/18ea8b53f608607075c93bc18b29be8dfd41eb3f\"\u003e\u003ccode\u003e18ea8b5\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dustinbyrne\"\u003e\u003ccode\u003e@​dustinbyrne\u003c/code\u003e\u003c/a\u003e! - Promote feature flag definition cache provider types to the main \u003ccode\u003eposthog-node\u003c/code\u003e export and deprecate \u003ccode\u003eposthog-node/experimental\u003c/code\u003e imports.\n(2026-05-21)\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/PostHog/posthog-js/commit/a12207094c7e7a9b72dbdb513ade41d46df0dcda\"\u003e\u003ccode\u003ea122070\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/7b84b7599d076c9c3c86f923f7d56cf937ad9874\"\u003e\u003ccode\u003e7b84b75\u003c/code\u003e\u003c/a\u003e fix: unify capture exception (\u003ca href=\"https://github.com/PostHog/posthog-js/tree/HEAD/packages/node/issues/3681\"\u003e#3681\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/727ddcfcc497fd42cfb89f17088ed467c13edd67\"\u003e\u003ccode\u003e727ddcf\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/e5a89ac32b7116f701a9e8e05bfb8361a3d8cee9\"\u003e\u003ccode\u003ee5a89ac\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/55b3c42160838974e6bc4d81417c15871bd7bd07\"\u003e\u003ccode\u003e55b3c42\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/1d0daf0a5c2721c0a6c600e12cb27474cfa74cc9\"\u003e\u003ccode\u003e1d0daf0\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/5d7a2d336befb9c2b7be9ff1961d674623d33901\"\u003e\u003ccode\u003e5d7a2d3\u003c/code\u003e\u003c/a\u003e fix(node): fire separate $feature_flag_called events per group context (\u003ca href=\"https://github.com/PostHog/posthog-js/tree/HEAD/packages/node/issues/3658\"\u003e#3658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/3d41c1d9dd4cecd928e5ec5b37ec16256bc95352\"\u003e\u003ccode\u003e3d41c1d\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/a05405d0ec67988715cb31634730f95729f3f27d\"\u003e\u003ccode\u003ea05405d\u003c/code\u003e\u003c/a\u003e chore: update versions and lockfile [version bump]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PostHog/posthog-js/commit/18ea8b53f608607075c93bc18b29be8dfd41eb3f\"\u003e\u003ccode\u003e18ea8b5\u003c/code\u003e\u003c/a\u003e feat(node): promote flag definition cache provider types (\u003ca href=\"https://github.com/PostHog/posthog-js/tree/HEAD/packages/node/issues/3642\"\u003e#3642\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PostHog/posthog-js/commits/posthog-node@5.35.6/packages/node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `playwright` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003eplaywright's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@rolldown/binding-linux-x64-gnu` from 1.0.0-rc.17 to 1.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rolldown/rolldown/releases\"\u003e@​rolldown/binding-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.3\u003c/h2\u003e\n\u003ch2\u003e[1.0.3] - 2026-05-27\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003etransform: respect decorator strictNullChecks option (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9580\"\u003e#9580\u003c/a\u003e) by \u003ca href=\"https://github.com/kylecannon\"\u003e\u003ccode\u003e@​kylecannon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edrop \u003ccode\u003edefer\u003c/code\u003e keyword (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9503\"\u003e#9503\u003c/a\u003e) by \u003ca href=\"https://github.com/TheAlexLichter\"\u003e\u003ccode\u003e@​TheAlexLichter\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eci: create target dir before cargo release-oxc update (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9584\"\u003e#9584\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: reorder prepare-release steps to avoid dirty git check failure (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9583\"\u003e#9583\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: canonicalize temp dir early and use platform-specific separator in test262 (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9582\"\u003e#9582\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: resolve symlinked temp dir in test262 snapshot normalization (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9581\"\u003e#9581\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: canonicalize temp dir path in test262 snapshot normalization (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9579\"\u003e#9579\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev: \u003ccode\u003eonOutput\u003c/code\u003e called twice when initial build fails (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9552\"\u003e#9552\u003c/a\u003e) by \u003ca href=\"https://github.com/hyf0\"\u003e\u003ccode\u003e@​hyf0\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev: make \u003ccode\u003eensureCurrentBuildFinish\u003c/code\u003e not returning error when engine closes (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9564\"\u003e#9564\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoxc-runtime: route require() to CJS helper variant (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9263\"\u003e#9263\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9526\"\u003e#9526\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003egenerator: use exporter chunk's export mode for CJS default re-exports (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9299\"\u003e#9299\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9529\"\u003e#9529\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erolldown: always run reduced-atom static cycle check (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9441\"\u003e#9441\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9514\"\u003e#9514\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eapply transform.dropLabels before scanning (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9521\"\u003e#9521\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9522\"\u003e#9522\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erolldown_watcher: take \u003ccode\u003erolldown\u003c/code\u003e dep through the workspace (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9510\"\u003e#9510\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ecache: keep the scan-stage cache consistent when a build fails (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9495\"\u003e#9495\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eskip JSON default-import namespace optimization for write targets (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9484\"\u003e#9484\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9489\"\u003e#9489\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: skip pnpm frozen-lockfile on Netlify to dodge catalog mismatch bug (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9471\"\u003e#9471\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚜 Refactor\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eoxc-runtime: use Cow for helper path construction (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9538\"\u003e#9538\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efold import defer phase drop into PreProcessor (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9524\"\u003e#9524\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edistinguish \u003ccode\u003emap: null\u003c/code\u003e vs \u003ccode\u003emap: undefined\u003c/code\u003e in transform hook output (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9497\"\u003e#9497\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eexplain the policy for Rust crates (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9547\"\u003e#9547\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ecache: add design doc for cache (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9544\"\u003e#9544\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eguide/troubleshooting: add TDZ error section (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9537\"\u003e#9537\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev-engine: add design doc for dev-engine (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9479\"\u003e#9479\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elazy-barrel: tweak some words (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9483\"\u003e#9483\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elazy-barrel: expand reasoning behind LARGE_BARREL_MODULES advice (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9477\"\u003e#9477\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e⚡ Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003egenerate: thread ast_table by value into codegen consumer (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9555\"\u003e#9555\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efinalizers: replace \u003ccode\u003e_reExport\u003c/code\u003e construction with a direct call to avoid calling \u003ccode\u003eclone_in\u003c/code\u003e (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9501\"\u003e#9501\u003c/a\u003e) by \u003ca href=\"https://github.com/Dunqing\"\u003e\u003ccode\u003e@​Dunqing\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ereorder hot-path boolean checks to short-circuit on cheap predicates first (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9523\"\u003e#9523\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧪 Testing\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erolldown: regression fixture for \u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9401\"\u003e#9401\u003c/a\u003e (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9418\"\u003e#9418\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\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/rolldown/rolldown/blob/main/CHANGELOG.md\"\u003e@​rolldown/binding-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.0.3] - 2026-05-27\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003etransform: respect decorator strictNullChecks option (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9580\"\u003e#9580\u003c/a\u003e) by \u003ca href=\"https://github.com/kylecannon\"\u003e\u003ccode\u003e@​kylecannon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edrop \u003ccode\u003edefer\u003c/code\u003e keyword (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9503\"\u003e#9503\u003c/a\u003e) by \u003ca href=\"https://github.com/TheAlexLichter\"\u003e\u003ccode\u003e@​TheAlexLichter\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eci: create target dir before cargo release-oxc update (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9584\"\u003e#9584\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: reorder prepare-release steps to avoid dirty git check failure (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9583\"\u003e#9583\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: canonicalize temp dir early and use platform-specific separator in test262 (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9582\"\u003e#9582\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: resolve symlinked temp dir in test262 snapshot normalization (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9581\"\u003e#9581\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etesting: canonicalize temp dir path in test262 snapshot normalization (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9579\"\u003e#9579\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev: \u003ccode\u003eonOutput\u003c/code\u003e called twice when initial build fails (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9552\"\u003e#9552\u003c/a\u003e) by \u003ca href=\"https://github.com/hyf0\"\u003e\u003ccode\u003e@​hyf0\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev: make \u003ccode\u003eensureCurrentBuildFinish\u003c/code\u003e not returning error when engine closes (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9564\"\u003e#9564\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eoxc-runtime: route require() to CJS helper variant (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9263\"\u003e#9263\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9526\"\u003e#9526\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003egenerator: use exporter chunk's export mode for CJS default re-exports (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9299\"\u003e#9299\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9529\"\u003e#9529\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erolldown: always run reduced-atom static cycle check (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9441\"\u003e#9441\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9514\"\u003e#9514\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eapply transform.dropLabels before scanning (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9521\"\u003e#9521\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9522\"\u003e#9522\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erolldown_watcher: take \u003ccode\u003erolldown\u003c/code\u003e dep through the workspace (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9510\"\u003e#9510\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ecache: keep the scan-stage cache consistent when a build fails (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9495\"\u003e#9495\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eskip JSON default-import namespace optimization for write targets (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9484\"\u003e#9484\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9489\"\u003e#9489\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edeps: skip pnpm frozen-lockfile on Netlify to dodge catalog mismatch bug (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9471\"\u003e#9471\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚜 Refactor\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eoxc-runtime: use Cow for helper path construction (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9538\"\u003e#9538\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efold import defer phase drop into PreProcessor (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9524\"\u003e#9524\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edistinguish \u003ccode\u003emap: null\u003c/code\u003e vs \u003ccode\u003emap: undefined\u003c/code\u003e in transform hook output (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9497\"\u003e#9497\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eexplain the policy for Rust crates (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9547\"\u003e#9547\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ecache: add design doc for cache (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9544\"\u003e#9544\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eguide/troubleshooting: add TDZ error section (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9537\"\u003e#9537\u003c/a\u003e) by \u003ca href=\"https://github.com/sapphi-red\"\u003e\u003ccode\u003e@​sapphi-red\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edev-engine: add design doc for dev-engine (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9479\"\u003e#9479\u003c/a\u003e) by \u003ca href=\"https://github.com/h-a-n-a\"\u003e\u003ccode\u003e@​h-a-n-a\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elazy-barrel: tweak some words (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9483\"\u003e#9483\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elazy-barrel: expand reasoning behind LARGE_BARREL_MODULES advice (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9477\"\u003e#9477\u003c/a\u003e) by \u003ca href=\"https://github.com/shulaoda\"\u003e\u003ccode\u003e@​shulaoda\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e⚡ Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003egenerate: thread ast_table by value into codegen consumer (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9555\"\u003e#9555\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efinalizers: replace \u003ccode\u003e_reExport\u003c/code\u003e construction with a direct call to avoid calling \u003ccode\u003eclone_in\u003c/code\u003e (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9501\"\u003e#9501\u003c/a\u003e) by \u003ca href=\"https://github.com/Dunqing\"\u003e\u003ccode\u003e@​Dunqing\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ereorder hot-path boolean checks to short-circuit on cheap predicates first (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9523\"\u003e#9523\u003c/a\u003e) by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧪 Testing\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erolldown: regression fixture for \u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9401\"\u003e#9401\u003c/a\u003e (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9418\"\u003e#9418\u003c/a\u003e) by \u003ca href=\"https://github.com/IWANABETHATGUY\"\u003e\u003ccode\u003e@​IWANABETHATGUY\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efailing test for \u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9441\"\u003e#9441\u003c/a\u003e (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9504\"\u003e#9504\u003c/a\u003e) by \u003ca href=\"https://github.com/TheAlexLichter\"\u003e\u003ccode\u003e@​TheAlexLichter\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/rolldown/rolldown/commit/a287faaa3db70e9e4145b6bc16567f596a3c2e1f\"\u003e\u003ccode\u003ea287faa\u003c/code\u003e\u003c/a\u003e release: v1.0.3 (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9586\"\u003e#9586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/e3b77564d40b863e40936aa1435cd02f07fe26a4\"\u003e\u003ccode\u003ee3b7756\u003c/code\u003e\u003c/a\u003e feat(transform): respect decorator strictNullChecks option (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9580\"\u003e#9580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/8326121d51873508cf042213685428bcb962bd38\"\u003e\u003ccode\u003e8326121\u003c/code\u003e\u003c/a\u003e chore(deps): upgrade oxc to 0.133.0 (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9563\"\u003e#9563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/c7bbe2d4c12e2e9ed1bb58120a5dca9e6a391b98\"\u003e\u003ccode\u003ec7bbe2d\u003c/code\u003e\u003c/a\u003e fix(dev): \u003ccode\u003eonOutput\u003c/code\u003e called twice when initial build fails (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9552\"\u003e#9552\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/95ed7caa16509440f12c7d5f8f2530dd94433562\"\u003e\u003ccode\u003e95ed7ca\u003c/code\u003e\u003c/a\u003e fix(dev): make \u003ccode\u003eensureCurrentBuildFinish\u003c/code\u003e not returning error when engine clo...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/f06c2a06f59791c2cb4debf82c2a152e8852cce6\"\u003e\u003ccode\u003ef06c2a0\u003c/code\u003e\u003c/a\u003e fix(oxc-runtime): route require() to CJS helper variant (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9263\"\u003e#9263\u003c/a\u003e) (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9526\"\u003e#9526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/1de499a7a7fbb81de675e7f8b27248bf8022ab65\"\u003e\u003ccode\u003e1de499a\u003c/code\u003e\u003c/a\u003e feat: drop \u003ccode\u003edefer\u003c/code\u003e keyword (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9503\"\u003e#9503\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/e412df1881ec06624582739e0e6fc19f85b9f320\"\u003e\u003ccode\u003ee412df1\u003c/code\u003e\u003c/a\u003e refactor: distinguish \u003ccode\u003emap: null\u003c/code\u003e vs \u003ccode\u003emap: undefined\u003c/code\u003e in transform hook outpu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/47a0e3bc13842f8cf916dd5cd1de203257abe307\"\u003e\u003ccode\u003e47a0e3b\u003c/code\u003e\u003c/a\u003e docs(lazy-barrel): expand reasoning behind LARGE_BARREL_MODULES advice (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9477\"\u003e#9477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rolldown/rolldown/commit/f2757ed768477fc9bf198a7d8c370bbd426aa3eb\"\u003e\u003ccode\u003ef2757ed\u003c/code\u003e\u003c/a\u003e release: v1.0.2 (\u003ca href=\"https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown/issues/9478\"\u003e#9478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rolldown/rolldown/commits/v1.0.3/packages/rolldown\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@rollup/rollup-linux-x64-gnu` from 4.60.1 to 4.60.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rollup/rollup/releases\"\u003e@​rollup/rollup-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.60.4\u003c/h2\u003e\n\u003ch2\u003e4.60.4\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-05-14\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove stability of chunk hashes (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6362\"\u003e#6362\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePull Requests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6362\"\u003e#6362\u003c/a\u003e: fix: stabilize chunk assignment across parallel file reads (\u003ca href=\"https://github.com/sonukapoor\"\u003e\u003ccode\u003e@​sonukapoor\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Sonu\"\u003e\u003ccode\u003e@​Sonu\u003c/code\u003e\u003c/a\u003e Kapoor, \u003ca href=\"https://github.com/TrickyPi\"\u003e\u003ccode\u003e@​TrickyPi\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6370\"\u003e#6370\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6371\"\u003e#6371\u003c/a\u003e: chore(deps): update dependency lru-cache to v11 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6372\"\u003e#6372\u003c/a\u003e: chore(deps): update react monorepo to v19 (major) (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6373\"\u003e#6373\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6375\"\u003e#6375\u003c/a\u003e: Resolve vulnerabilities (\u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.60.2\u003c/h2\u003e\n\u003ch2\u003e4.60.2\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-04-18\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResolve a variable rendering bug when generating different formats from the same build (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6350\"\u003e#6350\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePull Requests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6327\"\u003e#6327\u003c/a\u003e: docs: fix various typos in source and documentation (\u003ca href=\"https://github.com/Abhi3975\"\u003e\u003ccode\u003e@​Abhi3975\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6331\"\u003e#6331\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6332\"\u003e#6332\u003c/a\u003e: chore(deps): update codecov/codecov-action action to v6 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6333\"\u003e#6333\u003c/a\u003e: chore(deps): update dependency eslint-plugin-unicorn to v64 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6334\"\u003e#6334\u003c/a\u003e: fix(deps): update rust crate swc_compiler_base to v51 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6335\"\u003e#6335\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6346\"\u003e#6346\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6347\"\u003e#6347\u003c/a\u003e: chore(deps): update dependency lru-cache to v11 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6348\"\u003e#6348\u003c/a\u003e: fix(deps): update swc monorepo (major) (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6349\"\u003e#6349\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6350\"\u003e#6350\u003c/a\u003e: fix: reset variable render names between outputs in the same generate (\u003ca href=\"https://github.com/barry3406\"\u003e\u003ccode\u003e@​barry3406\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6351\"\u003e#6351\u003c/a\u003e: chore(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6352\"\u003e#6352\u003c/a\u003e: chore(deps): update cross-platform-actions/action action to v1 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6353\"\u003e#6353\u003c/a\u003e: chore(deps): update dependency lru-cache to v11 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6354\"\u003e#6354\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6355\"\u003e#6355\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6356\"\u003e#6356\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6358\"\u003e#6358\u003c/a\u003e: chore: remove cross-env from devDeps (\u003ca href=\"https://github.com/K-tecchan\"\u003e\u003ccode\u003e@​K-tecchan\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/rollup/rollup/blob/master/CHANGELOG.md\"\u003e@​rollup/rollup-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.60.4\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-05-14\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove stability of chunk hashes (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6362\"\u003e#6362\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePull Requests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6362\"\u003e#6362\u003c/a\u003e: fix: stabilize chunk assignment across parallel file reads (\u003ca href=\"https://github.com/sonukapoor\"\u003e\u003ccode\u003e@​sonukapoor\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Sonu\"\u003e\u003ccode\u003e@​Sonu\u003c/code\u003e\u003c/a\u003e Kapoor, \u003ca href=\"https://github.com/TrickyPi\"\u003e\u003ccode\u003e@​TrickyPi\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6370\"\u003e#6370\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6371\"\u003e#6371\u003c/a\u003e: chore(deps): update dependency lru-cache to v11 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6372\"\u003e#6372\u003c/a\u003e: chore(deps): update react monorepo to v19 (major) (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6373\"\u003e#6373\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6375\"\u003e#6375\u003c/a\u003e: Resolve vulnerabilities (\u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.60.3\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-05-04\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure nested \u0026quot;exports\u0026quot; variables are not renamed (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6360\"\u003e#6360\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePull Requests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6360\"\u003e#6360\u003c/a\u003e: fix: do not rename nested \u0026quot;exports\u0026quot; bindings that do not conflict (\u003ca href=\"https://github.com/tariqrafique\"\u003e\u003ccode\u003e@​tariqrafique\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6364\"\u003e#6364\u003c/a\u003e: chore(deps): update msys2/setup-msys2 digest to e989830 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6365\"\u003e#6365\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6366\"\u003e#6366\u003c/a\u003e: fix(deps): update swc monorepo (major) (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6367\"\u003e#6367\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6368\"\u003e#6368\u003c/a\u003e: docs: add missing backticks in \u003ccode\u003eplugin-development\u003c/code\u003e (\u003ca href=\"https://github.com/lumirlumir\"\u003e\u003ccode\u003e@​lumirlumir\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.60.2\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-04-18\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResolve a variable rendering bug when generating different formats from the same build (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6350\"\u003e#6350\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePull Requests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6327\"\u003e#6327\u003c/a\u003e: docs: fix various typos in source and documentation (\u003ca href=\"https://github.com/Abhi3975\"\u003e\u003ccode\u003e@​Abhi3975\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6331\"\u003e#6331\u003c/a\u003e: fix(deps): update minor/patch updates (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6332\"\u003e#6332\u003c/a\u003e: chore(deps): update codecov/codecov-action action to v6 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6333\"\u003e#6333\u003c/a\u003e: chore(deps): update dependency eslint-plugin-unicorn to v64 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6334\"\u003e#6334\u003c/a\u003e: fix(deps): update rust crate swc_compiler_base to v51 (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6335\"\u003e#6335\u003c/a\u003e: chore(deps): lock file maintenance (\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/lukastaegert\"\u003e\u003ccode\u003e@​lukastaegert\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/rollup/rollup/commit/d311a84b0bb4d4a6f50d19ffd2c29cca28660c88\"\u003e\u003ccode\u003ed311a84\u003c/code\u003e\u003c/a\u003e 4.60.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rollup/rollup/commit/6aa324854482e273b711972955d2d1b3bb445bcc\"\u003e\u003ccode\u003e6aa3248\u003c/code\u003e\u003c/a\u003e fix: stabilize chunk assignment across parallel file reads (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6362\"\u003e#6362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rollup/rollup/commit/82a0fe76b1372a2cf509fc4067d69f25569b83f5\"\u003e\u003ccode\u003e82a0fe7\u003c/code\u003e\u003c/a\u003e Resolve vulnerabilities (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6375\"\u003e#6375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rollup/rollup/commit/71f5ebc893d7ff76b5571d63b04ea2ed...\n\n_Description has been truncated_","html_url":"https://github.com/maxd4/CleanmyMap/pull/68","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxd4%2FCleanmyMap/issues/68","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/68/packages"}},{"old_version":"1.58.2","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-31T02:17:26.000Z","version_change":"1.58.2 → 1.60.0","issue":{"uuid":"4556318854","node_id":"PR_kwDORewJlc7hCA6R","number":335,"state":"open","title":"chore(deps): bump the dev-dependencies group across 1 directory with 20 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-31T02:17:26.000Z","updated_at":"2026-05-31T02:18:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"dev-dependencies","update_count":20,"packages":[{"name":"@biomejs/biome","old_version":"2.4.8","new_version":"2.4.16","repository_url":"https://github.com/biomejs/biome"},{"name":"@vitest/coverage-v8","old_version":"4.1.0","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"fs-xattr","old_version":"0.3.1","new_version":"0.4.0","repository_url":"https://github.com/LinusU/fs-xattr"},{"name":"vitest","old_version":"4.1.0","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@tailwindcss/postcss","old_version":"4.2.2","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@typia/unplugin","old_version":"12.0.1","new_version":"12.1.1","repository_url":"https://github.com/samchon/typia"},{"name":"tsx","old_version":"4.21.0","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"},{"name":"typescript-json-schema","old_version":"0.67.1","new_version":"0.67.4","repository_url":"https://github.com/YousefED/typescript-json-schema"},{"name":"@electron-forge/cli","old_version":"7.11.1","new_version":"7.11.2","repository_url":"https://github.com/electron/forge"},{"name":"@electron-forge/maker-dmg","old_version":"7.11.1","new_version":"7.11.2","repository_url":"https://github.com/electron/forge"},{"name":"@electron-forge/maker-squirrel","old_version":"7.11.1","new_version":"7.11.2","repository_url":"https://github.com/electron/forge"},{"name":"@electron-forge/maker-zip","old_version":"7.11.1","new_version":"7.11.2","repository_url":"https://github.com/electron/forge"},{"name":"playwright","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"postcss","old_version":"8.5.8","new_version":"8.5.15","repository_url":"https://github.com/postcss/postcss"},{"name":"@tailwindcss/vite","old_version":"4.2.2","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"eslint-plugin-react-refresh","old_version":"0.4.26","new_version":"0.5.2","repository_url":"https://github.com/ArnaudBarre/eslint-plugin-react-refresh"},{"name":"typescript-eslint","old_version":"8.58.0","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@remotion/cli","old_version":"4.0.454","new_version":"4.0.469","repository_url":"https://github.com/remotion-dev/remotion"},{"name":"@webgpu/types","old_version":"0.1.69","new_version":"0.1.70","repository_url":"https://github.com/gpuweb/types"}],"path":null,"ecosystem":"npm"},"body":"Bumps the dev-dependencies group with 20 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.8` | `2.4.16` |\n| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.1.0` | `4.1.7` |\n| [fs-xattr](https://github.com/LinusU/fs-xattr) | `0.3.1` | `0.4.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.0` | `4.1.7` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.2` | `4.3.0` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [@typia/unplugin](https://github.com/samchon/typia) | `12.0.1` | `12.1.1` |\n| [tsx](https://github.com/privatenumber/tsx) | `4.21.0` | `4.22.3` |\n| [typescript-json-schema](https://github.com/YousefED/typescript-json-schema) | `0.67.1` | `0.67.4` |\n| [@electron-forge/cli](https://github.com/electron/forge) | `7.11.1` | `7.11.2` |\n| [@electron-forge/maker-dmg](https://github.com/electron/forge) | `7.11.1` | `7.11.2` |\n| [@electron-forge/maker-squirrel](https://github.com/electron/forge) | `7.11.1` | `7.11.2` |\n| [@electron-forge/maker-zip](https://github.com/electron/forge) | `7.11.1` | `7.11.2` |\n| [playwright](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [postcss](https://github.com/postcss/postcss) | `8.5.8` | `8.5.15` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.2` | `4.3.0` |\n| [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh) | `0.4.26` | `0.5.2` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.58.0` | `8.60.0` |\n| [@remotion/cli](https://github.com/remotion-dev/remotion) | `4.0.454` | `4.0.469` |\n| [@webgpu/types](https://github.com/gpuweb/types) | `0.1.69` | `0.1.70` |\n\n\nUpdates `@biomejs/biome` from 2.4.8 to 2.4.16\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.16\u003c/h2\u003e\n\u003ch2\u003e2.4.16\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/10329\"\u003e#10329\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ef764d51b9f5be18ec5a4f9b4dce732512e5d805\"\u003e\u003ccode\u003eef764d5\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed an issue where diagnostics showed an incorrect location in Astro files.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10363\"\u003e#10363\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/50aa4157599a1ac5c77c13bce81f5c87240beff0\"\u003e\u003ccode\u003e50aa415\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed HTML formatting for a case where comments could cause the formatter to split up a closing tag, which would cause the resulting HTML to be syntactically invalid.\u003c/p\u003e\n\u003cp\u003eInput:\u003c/p\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;span\n  \u0026gt;\u0026lt;!-- 1\n--\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 2\n--\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 3\n--\u0026gt;\u0026lt;/span\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOutput:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e  \u0026lt;span\n\t  \u0026gt;\u0026lt;!-- 1\n- --\u0026gt; \u0026lt;span\u0026gt;a\u0026lt;/span\u0026lt;!-- 2\n- --\u0026gt; \u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n+ --\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\u0026gt;\u0026lt;!-- 2\n+ --\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n  --\u0026gt;\u0026lt;/span\n  \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/10465\"\u003e#10465\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/0c718da81770f47d65845bc1a006f99512d9359b\"\u003e\u003ccode\u003e0c718da\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dfedoryshchev\"\u003e\u003ccode\u003e@​dfedoryshchev\u003c/code\u003e\u003c/a\u003e! - Fixed diagnostics emitted by the \u003ccode\u003enoUntrustedLicenses\u003c/code\u003e rule.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10358\"\u003e#10358\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/05c26176573534a0abfa92d454d244f9569bc77d\"\u003e\u003ccode\u003e05c2617\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10356\"\u003e#10356\u003c/a\u003e: \u003ccode\u003ebiome rage --linter\u003c/code\u003e now displays rules enabled through linter domains in the enabled rules list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10300\"\u003e#10300\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/950247c389e693c16b47d61d8ef0f1b85d1a1b02\"\u003e\u003ccode\u003e950247c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10265\"\u003e#10265\u003c/a\u003e: Svelte function bindings such as \u003ccode\u003ebind:value={get, set}\u003c/code\u003e are now parsed more precisely, so \u003ca href=\"https://biomejs.dev/linter/rules/no-comma-operator/\"\u003e\u003ccode\u003enoCommaOperator\u003c/code\u003e\u003c/a\u003e won't emit false positives for that syntax anymore.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9786\"\u003e#9786\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MeGaNeKoS\"\u003e\u003ccode\u003e@​MeGaNeKoS\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/8480\"\u003e#8480\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/use-destructuring/\"\u003e\u003ccode\u003euseDestructuring\u003c/code\u003e\u003c/a\u003e now provides \u003ccode\u003evariableDeclarator\u003c/code\u003e and \u003ccode\u003eassignmentExpression\u003c/code\u003e options to control which contexts enforce destructuring, matching ESLint's \u003ccode\u003eprefer-destructuring\u003c/code\u003e configuration. Both default to \u003ccode\u003e{array: true, object: true}\u003c/code\u003e. The diagnostic for object destructuring in assignment expressions now instructs users to wrap the assignment in parentheses.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10425\"\u003e#10425\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1948b7242e092ed0cfcf501ef6f119202b8ea93b\"\u003e\u003ccode\u003e1948b72\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/sjh9714\"\u003e\u003ccode\u003e@​sjh9714\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10244\"\u003e#10244\u003c/a\u003e: The \u003ccode\u003euseOptionalChain\u003c/code\u003e rule now detects negated guard inequality chains like \u003ccode\u003e!foo || foo.bar !== \u0026quot;x\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10442\"\u003e#10442\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/001f94f696d9baca3c231d39895a01d4dd528d52\"\u003e\u003ccode\u003e001f94f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ematipico\"\u003e\u003ccode\u003e@​ematipico\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10411\"\u003e#10411\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/no-misused-promises/\"\u003e\u003ccode\u003enoMisusedPromises\u003c/code\u003e\u003c/a\u003e no longer causes a stack overflow when a nested function returns an object with shorthand properties that shadow destructured variables from an outer scope.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10318\"\u003e#10318\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added support for \u003ccode\u003eformatter.trailingCommas\u003c/code\u003e in overrides. This option was previously available in the top-level formatter configuration but missing from formatter overrides.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10319\"\u003e#10319\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/2e3770923f9fb4e33606113e726014f7b63730d0\"\u003e\u003ccode\u003e2e37709\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed Vue and Svelte formatting for standalone interpolations in inline elements. Biome now preserves existing newlines in cases like:\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/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.16\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/10329\"\u003e#10329\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ef764d51b9f5be18ec5a4f9b4dce732512e5d805\"\u003e\u003ccode\u003eef764d5\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed an issue where diagnostics showed an incorrect location in Astro files.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10363\"\u003e#10363\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/50aa4157599a1ac5c77c13bce81f5c87240beff0\"\u003e\u003ccode\u003e50aa415\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed HTML formatting for a case where comments could cause the formatter to split up a closing tag, which would cause the resulting HTML to be syntactically invalid.\u003c/p\u003e\n\u003cp\u003eInput:\u003c/p\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;span\n  \u0026gt;\u0026lt;!-- 1\n--\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 2\n--\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 3\n--\u0026gt;\u0026lt;/span\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOutput:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e  \u0026lt;span\n\t  \u0026gt;\u0026lt;!-- 1\n- --\u0026gt; \u0026lt;span\u0026gt;a\u0026lt;/span\u0026lt;!-- 2\n- --\u0026gt; \u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n+ --\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\u0026gt;\u0026lt;!-- 2\n+ --\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n  --\u0026gt;\u0026lt;/span\n  \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/10465\"\u003e#10465\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/0c718da81770f47d65845bc1a006f99512d9359b\"\u003e\u003ccode\u003e0c718da\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dfedoryshchev\"\u003e\u003ccode\u003e@​dfedoryshchev\u003c/code\u003e\u003c/a\u003e! - Fixed diagnostics emitted by the \u003ccode\u003enoUntrustedLicenses\u003c/code\u003e rule.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10358\"\u003e#10358\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/05c26176573534a0abfa92d454d244f9569bc77d\"\u003e\u003ccode\u003e05c2617\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10356\"\u003e#10356\u003c/a\u003e: \u003ccode\u003ebiome rage --linter\u003c/code\u003e now displays rules enabled through linter domains in the enabled rules list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10300\"\u003e#10300\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/950247c389e693c16b47d61d8ef0f1b85d1a1b02\"\u003e\u003ccode\u003e950247c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10265\"\u003e#10265\u003c/a\u003e: Svelte function bindings such as \u003ccode\u003ebind:value={get, set}\u003c/code\u003e are now parsed more precisely, so \u003ca href=\"https://biomejs.dev/linter/rules/no-comma-operator/\"\u003e\u003ccode\u003enoCommaOperator\u003c/code\u003e\u003c/a\u003e won't emit false positives for that syntax anymore.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9786\"\u003e#9786\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MeGaNeKoS\"\u003e\u003ccode\u003e@​MeGaNeKoS\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/8480\"\u003e#8480\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/use-destructuring/\"\u003e\u003ccode\u003euseDestructuring\u003c/code\u003e\u003c/a\u003e now provides \u003ccode\u003evariableDeclarator\u003c/code\u003e and \u003ccode\u003eassignmentExpression\u003c/code\u003e options to control which contexts enforce destructuring, matching ESLint's \u003ccode\u003eprefer-destructuring\u003c/code\u003e configuration. Both default to \u003ccode\u003e{array: true, object: true}\u003c/code\u003e. The diagnostic for object destructuring in assignment expressions now instructs users to wrap the assignment in parentheses.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10425\"\u003e#10425\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1948b7242e092ed0cfcf501ef6f119202b8ea93b\"\u003e\u003ccode\u003e1948b72\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/sjh9714\"\u003e\u003ccode\u003e@​sjh9714\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10244\"\u003e#10244\u003c/a\u003e: The \u003ccode\u003euseOptionalChain\u003c/code\u003e rule now detects negated guard inequality chains like \u003ccode\u003e!foo || foo.bar !== \u0026quot;x\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10442\"\u003e#10442\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/001f94f696d9baca3c231d39895a01d4dd528d52\"\u003e\u003ccode\u003e001f94f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ematipico\"\u003e\u003ccode\u003e@​ematipico\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10411\"\u003e#10411\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/no-misused-promises/\"\u003e\u003ccode\u003enoMisusedPromises\u003c/code\u003e\u003c/a\u003e no longer causes a stack overflow when a nested function returns an object with shorthand properties that shadow destructured variables from an outer scope.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10318\"\u003e#10318\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added support for \u003ccode\u003eformatter.trailingCommas\u003c/code\u003e in overrides. This option was previously available in the top-level formatter configuration but missing from formatter overrides.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10319\"\u003e#10319\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/2e3770923f9fb4e33606113e726014f7b63730d0\"\u003e\u003ccode\u003e2e37709\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed Vue and Svelte formatting for standalone interpolations in inline elements. Biome now preserves existing newlines in cases like:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e\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/5f4ea56b1dfb00d839af218e3c6484154073a7eb\"\u003e\u003ccode\u003e5f4ea56\u003c/code\u003e\u003c/a\u003e ci: release (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10326\"\u003e#10326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/de2a33ce8be86b696742f3adee35a66dc9fa943b\"\u003e\u003ccode\u003ede2a33c\u003c/code\u003e\u003c/a\u003e fix(core): regression in emitted types (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10478\"\u003e#10478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/d835303700f27f8f362a186a0dddc7995117daf9\"\u003e\u003ccode\u003ed835303\u003c/code\u003e\u003c/a\u003e docs: remove redundant default phrase in \u003ccode\u003euseConsistentObjectDefinitions\u003c/code\u003e rul...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/4f1aaf2f833d5963dd150836836be6bc68212d68\"\u003e\u003ccode\u003e4f1aaf2\u003c/code\u003e\u003c/a\u003e fix: incorrect build when using build or test (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10426\"\u003e#10426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/dc73b6baa55606ec7b6aa9229564b1c142116f2b\"\u003e\u003ccode\u003edc73b6b\u003c/code\u003e\u003c/a\u003e refactor: make plugins opt-in via feature gate (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10418\"\u003e#10418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e feat(useDestructuring): add options for assignment/declaration and improve di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e fix(config): support trailingCommas in overrides (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10318\"\u003e#10318\u003c/a\u003e)\u003c/li\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\u003eAdditional commits viewable in \u003ca href=\"https://github.com/biomejs/biome/commits/@biomejs/biome@2.4.16/packages/@biomejs/biome\"\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.0 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev4.1.5\u003c/h2\u003e\n\u003ch3\u003e   🚀 Experimental Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e: Istanbul to support \u003ccode\u003einstrumenter\u003c/code\u003e option  -  by \u003ca href=\"https://github.com/BartWaardenburg\"\u003e\u003ccode\u003e@​BartWaardenburg\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10119\"\u003evitest-dev/vitest#10119\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/0e0ff41c7\"\u003e\u003c!-- raw HTML omitted --\u003e(0e0ff)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e--project negation excludes browser instances  -  by \u003ca href=\"https://github.com/felamaslen\"\u003e\u003ccode\u003e@​felamaslen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10131\"\u003evitest-dev/vitest#10131\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9423dc084\"\u003e\u003c!-- raw HTML omitted --\u003e(9423d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eProject color label on html reporter  -  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/10142\"\u003evitest-dev/vitest#10142\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/596f73986\"\u003e\u003c!-- raw HTML omitted --\u003e(596f7)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003evi.defineHelper\u003c/code\u003e called as object method  -  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/10163\"\u003evitest-dev/vitest#10163\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/122c25b5b\"\u003e\u003c!-- raw HTML omitted --\u003e(122c2)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlias \u003ccode\u003eagent\u003c/code\u003e reporter to \u003ccode\u003eminimal\u003c/code\u003e  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10157\"\u003evitest-dev/vitest#10157\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/663b99fe3\"\u003e\u003c!-- raw HTML omitted --\u003e(663b9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect diff config options in soft assertions  -  by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003esheremet-va\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/8696\"\u003evitest-dev/vitest#8696\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9787dedad\"\u003e\u003c!-- raw HTML omitted --\u003e(9787d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect diff config options in soft assertions \u0026quot;  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/8696\"\u003evitest-dev/vitest#8696\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/7dc6d54fd\"\u003e\u003c!-- raw HTML omitted --\u003e(7dc6d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003east-collect\u003c/strong\u003e: Recognize _\u003cem\u003evi_import\u003c/em\u003e prefix in static test discovery  -  by \u003ca href=\"https://github.com/Yejneshwar\"\u003e\u003ccode\u003e@​Yejneshwar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10129\"\u003evitest-dev/vitest#10129\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/325463ab2\"\u003e\u003c!-- raw HTML omitted --\u003e(32546)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e: Descriptive error message when reports directory is removed during test run  -  by \u003ca href=\"https://github.com/DaveT1991\"\u003e\u003ccode\u003e@​DaveT1991\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10117\"\u003evitest-dev/vitest#10117\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/1413382e1\"\u003e\u003c!-- raw HTML omitted --\u003e(14133)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esnapshot\u003c/strong\u003e: Increase default snapshot max output length  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eCodex\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10150\"\u003evitest-dev/vitest#10150\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/21e66ff63\"\u003e\u003c!-- raw HTML omitted --\u003e(21e66)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eui\u003c/strong\u003e: Fix jsx/tsx syntax highlight  -  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/10152\"\u003evitest-dev/vitest#10152\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/f1b1f6c7b\"\u003e\u003c!-- raw HTML omitted --\u003e(f1b1f)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eweb-worker\u003c/strong\u003e: Support MessagePort objects referenced inside postMessage data  -  by \u003ca href=\"https://github.com/whitphx\"\u003e\u003ccode\u003e@​whitphx\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/9927\"\u003evitest-dev/vitest#9927\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10124\"\u003evitest-dev/vitest#10124\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/7ad7d39af\"\u003e\u003c!-- raw HTML omitted --\u003e(7ad7d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi\u003c/strong\u003e: Make test-specification options writable  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10154\"\u003evitest-dev/vitest#10154\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/6abd557b7\"\u003e\u003c!-- raw HTML omitted --\u003e(6abd5)\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.4...v4.1.5\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev4.1.4\u003c/h2\u003e\n\u003ch3\u003e   🚀 Experimental Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e:\n\u003cul\u003e\n\u003cli\u003eDefault to text reporter \u003ccode\u003eskipFull\u003c/code\u003e if agent detected  -  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/10018\"\u003evitest-dev/vitest#10018\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/53757804c\"\u003e\u003c!-- raw HTML omitted --\u003e(53757)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eexperimental\u003c/strong\u003e:\n\u003cul\u003e\n\u003cli\u003eExpose \u003ccode\u003eassertion\u003c/code\u003e as a public field  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10095\"\u003evitest-dev/vitest#10095\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/a120e3ab8\"\u003e\u003c!-- raw HTML omitted --\u003e(a120e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport aria snapshot  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e, \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/9668\"\u003evitest-dev/vitest#9668\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/d4fbb5cc9\"\u003e\u003c!-- raw HTML omitted --\u003e(d4fbb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\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\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/e399846850fedf10b8228cbe46a419628998acd9\"\u003e\u003ccode\u003ee399846\u003c/code\u003e\u003c/a\u003e chore: release v4.1.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/ac04bac206f49d793e7277084f707aee718aa936\"\u003e\u003ccode\u003eac04bac\u003c/code\u003e\u003c/a\u003e chore: release v4.1.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/2dc0d62eaf08d8acb1f5042fdb8ac5b4a19fdc73\"\u003e\u003ccode\u003e2dc0d62\u003c/code\u003e\u003c/a\u003e chore: release v4.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/fc6f482f4c54bf6a766a0ff502b9843994af5bf5\"\u003e\u003ccode\u003efc6f482\u003c/code\u003e\u003c/a\u003e chore: release v4.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/1f2d318493363855b66a22caaf7c1c10579029d5\"\u003e\u003ccode\u003e1f2d318\u003c/code\u003e\u003c/a\u003e chore: release v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/aaf9f18ae70e52b6e67aaf85f7f784d9dabd0acc\"\u003e\u003ccode\u003eaaf9f18\u003c/code\u003e\u003c/a\u003e fix(coverage): simplify provider types (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8/issues/9931\"\u003e#9931\u003c/a\u003e)\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 `fs-xattr` from 0.3.1 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/LinusU/fs-xattr/releases\"\u003efs-xattr's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e🚢 0.4.0 / 2021-05-11\u003c/h2\u003e\n\u003ch2\u003e💥 Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eConvert package to ESM\u003c/p\u003e\n\u003cp\u003eMigration Guide:\u003c/p\u003e\n\u003cp\u003eThis relases changes the package from a Common JS module to an EcmaScript module, and drops support for older versions of Node.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe minimum version of Node.js supported is now: \u003ccode\u003e12.20.0\u003c/code\u003e, \u003ccode\u003e14.13.1\u003c/code\u003e, and \u003ccode\u003e16.0.0\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe package must now be imported using the native \u003ccode\u003eimport\u003c/code\u003e syntax instead of with \u003ccode\u003erequire\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe exported functions have been renamed to have better stand-alone names:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget\u003c/code\u003e to \u003ccode\u003egetAttribute\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eset\u003c/code\u003e to \u003ccode\u003esetAttribute\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremove\u003c/code\u003e to \u003ccode\u003eremoveAttribute\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003elistAttributes\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003egetSync\u003c/code\u003e to \u003ccode\u003egetAttributeSync\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esetSync\u003c/code\u003e to \u003ccode\u003esetAttributeSync\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremoveSync\u003c/code\u003e to \u003ccode\u003eremoveAttributeSync\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elistSync\u003c/code\u003e to \u003ccode\u003elistAttributesSync\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🌹 Internal Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd documentation about namespaces\u003c/li\u003e\n\u003cli\u003eUpgrade to Mocha 7.x\u003c/li\u003e\n\u003cli\u003eSwitch CI to GitHub Actions\u003c/li\u003e\n\u003cli\u003eUpgrade to Mocha 8.x\u003c/li\u003e\n\u003cli\u003eUpgrade to Standard 16.x\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/LinusU/fs-xattr/commit/d9ffa8c0df504c8d140ccc761cbf55f7aab4dbcf\"\u003e\u003ccode\u003ed9ffa8c\u003c/code\u003e\u003c/a\u003e 🚢 0.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/2179cce8d7a85f65655cbb7a9b809058d22f9e6b\"\u003e\u003ccode\u003e2179cce\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/LinusU/fs-xattr/issues/41\"\u003e#41\u003c/a\u003e from LinusU/lu-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/4e98f654e717d21411725e8fadb96bf7ae416481\"\u003e\u003ccode\u003e4e98f65\u003c/code\u003e\u003c/a\u003e 🌹 Upgrade to Standard 16.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/acbad7b527dd499a9d784e14af663e77b996b813\"\u003e\u003ccode\u003eacbad7b\u003c/code\u003e\u003c/a\u003e 🌹 Upgrade to Mocha 8.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/4b926f17be626de5384cd90adaab770e833fa08b\"\u003e\u003ccode\u003e4b926f1\u003c/code\u003e\u003c/a\u003e 💥 Convert package to ESM\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/6445f635afa5d9b9a0ba7db72b64ba51289787ed\"\u003e\u003ccode\u003e6445f63\u003c/code\u003e\u003c/a\u003e 🌹 Switch CI to GitHub Actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/0a2cfb4e986c5eb20f313bb3ed93bc2921922a8e\"\u003e\u003ccode\u003e0a2cfb4\u003c/code\u003e\u003c/a\u003e 🌹 Upgrade to Mocha 7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/171d502d30596f38e4c4b99a3357cd3efaacfe9c\"\u003e\u003ccode\u003e171d502\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/LinusU/fs-xattr/issues/39\"\u003e#39\u003c/a\u003e from styks1987/master\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/LinusU/fs-xattr/commit/e5a5cfda68fa65ab44482380c6e3a01e99a8e114\"\u003e\u003ccode\u003ee5a5cfd\u003c/code\u003e\u003c/a\u003e 🌹 Add documentation about namespaces\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/LinusU/fs-xattr/compare/v0.3.1...v0.4.0\"\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.0 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev4.1.5\u003c/h2\u003e\n\u003ch3\u003e   🚀 Experimental Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e: Istanbul to support \u003ccode\u003einstrumenter\u003c/code\u003e option  -  by \u003ca href=\"https://github.com/BartWaardenburg\"\u003e\u003ccode\u003e@​BartWaardenburg\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10119\"\u003evitest-dev/vitest#10119\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/0e0ff41c7\"\u003e\u003c!-- raw HTML omitted --\u003e(0e0ff)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e--project negation excludes browser instances  -  by \u003ca href=\"https://github.com/felamaslen\"\u003e\u003ccode\u003e@​felamaslen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10131\"\u003evitest-dev/vitest#10131\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9423dc084\"\u003e\u003c!-- raw HTML omitted --\u003e(9423d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eProject color label on html reporter  -  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/10142\"\u003evitest-dev/vitest#10142\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/596f73986\"\u003e\u003c!-- raw HTML omitted --\u003e(596f7)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003evi.defineHelper\u003c/code\u003e called as object method  -  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/10163\"\u003evitest-dev/vitest#10163\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/122c25b5b\"\u003e\u003c!-- raw HTML omitted --\u003e(122c2)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAlias \u003ccode\u003eagent\u003c/code\u003e reporter to \u003ccode\u003eminimal\u003c/code\u003e  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10157\"\u003evitest-dev/vitest#10157\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/663b99fe3\"\u003e\u003c!-- raw HTML omitted --\u003e(663b9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect diff config options in soft assertions  -  by \u003ca href=\"https://github.com/Copilot\"\u003e\u003ccode\u003e@​Copilot\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003esheremet-va\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/8696\"\u003evitest-dev/vitest#8696\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9787dedad\"\u003e\u003c!-- raw HTML omitted --\u003e(9787d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect diff config options in soft assertions \u0026quot;  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/8696\"\u003evitest-dev/vitest#8696\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/7dc6d54fd\"\u003e\u003c!-- raw HTML omitted --\u003e(7dc6d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003east-collect\u003c/strong\u003e: Recognize _\u003cem\u003evi_import\u003c/em\u003e prefix in static test discovery  -  by \u003ca href=\"https://github.com/Yejneshwar\"\u003e\u003ccode\u003e@​Yejneshwar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10129\"\u003evitest-dev/vitest#10129\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/325463ab2\"\u003e\u003c!-- raw HTML omitted --\u003e(32546)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e: Descriptive error message when reports directory is removed during test run  -  by \u003ca href=\"https://github.com/DaveT1991\"\u003e\u003ccode\u003e@​DaveT1991\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10117\"\u003evitest-dev/vitest#10117\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/1413382e1\"\u003e\u003c!-- raw HTML omitted --\u003e(14133)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003esnapshot\u003c/strong\u003e: Increase default snapshot max output length  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eCodex\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10150\"\u003evitest-dev/vitest#10150\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/21e66ff63\"\u003e\u003c!-- raw HTML omitted --\u003e(21e66)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eui\u003c/strong\u003e: Fix jsx/tsx syntax highlight  -  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/10152\"\u003evitest-dev/vitest#10152\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/f1b1f6c7b\"\u003e\u003c!-- raw HTML omitted --\u003e(f1b1f)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eweb-worker\u003c/strong\u003e: Support MessagePort objects referenced inside postMessage data  -  by \u003ca href=\"https://github.com/whitphx\"\u003e\u003ccode\u003e@​whitphx\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/9927\"\u003evitest-dev/vitest#9927\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10124\"\u003evitest-dev/vitest#10124\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/7ad7d39af\"\u003e\u003c!-- raw HTML omitted --\u003e(7ad7d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi\u003c/strong\u003e: Make test-specification options writable  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10154\"\u003evitest-dev/vitest#10154\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/6abd557b7\"\u003e\u003c!-- raw HTML omitted --\u003e(6abd5)\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.4...v4.1.5\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev4.1.4\u003c/h2\u003e\n\u003ch3\u003e   🚀 Experimental Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecoverage\u003c/strong\u003e:\n\u003cul\u003e\n\u003cli\u003eDefault to text reporter \u003ccode\u003eskipFull\u003c/code\u003e if agent detected  -  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/10018\"\u003evitest-dev/vitest#10018\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/53757804c\"\u003e\u003c!-- raw HTML omitted --\u003e(53757)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eexperimental\u003c/strong\u003e:\n\u003cul\u003e\n\u003cli\u003eExpose \u003ccode\u003eassertion\u003c/code\u003e as a public field  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10095\"\u003evitest-dev/vitest#10095\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/a120e3ab8\"\u003e\u003c!-- raw HTML omitted --\u003e(a120e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport aria snapshot  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e, \u003ca href=\"https://github.com/AriPerkkio\"\u003e\u003ccode\u003e@​AriPerkkio\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/9668\"\u003evitest-dev/vitest#9668\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/d4fbb5cc9\"\u003e\u003c!-- raw HTML omitted --\u003e(d4fbb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\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\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee1830604d57f6a02bf28f8067cdffc06\"\u003e\u003ccode\u003e18af98c\u003c/code\u003e\u003c/a\u003e fix(browser): simplify orchestrator otel carrier (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10285\"\u003e#10285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607cc67c7bf52ead13a606321ffdb06a857\"\u003e\u003ccode\u003e3188260\u003c/code\u003e\u003c/a\u003e feat(browser): provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/e399846850fedf10b8228cbe46a419628998acd9\"\u003e\u003ccode\u003ee399846\u003c/code\u003e\u003c/a\u003e chore: release v4.1.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/7dc6d54fd9dda0fe6fee2fb6451d0611a9ecb6e7\"\u003e\u003ccode\u003e7dc6d54\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: respect diff config options in soft assertions (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/8696\"\u003e#8696\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/9787dedade9896a6d3eeed7739177d6c583a68a7\"\u003e\u003ccode\u003e9787ded\u003c/code\u003e\u003c/a\u003e fix: respect diff config options in soft assertions (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/8696\"\u003e#8696\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/325463ab292c45c3ef27aa21ec7da380c307052c\"\u003e\u003ccode\u003e325463a\u003c/code\u003e\u003c/a\u003e fix(ast-collect): recognize _\u003cem\u003evi_import\u003c/em\u003e prefix in static test discovery (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10\"\u003e#10\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/0e0ff41c7e86d6e2bf581f074dc216805d10d371\"\u003e\u003ccode\u003e0e0ff41\u003c/code\u003e\u003c/a\u003e feat(coverage): istanbul to support \u003ccode\u003einstrumenter\u003c/code\u003e option (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10119\"\u003e#10119\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/663b99fe3e6a60fc8a7ccd2d9941d1cbe929b606\"\u003e\u003ccode\u003e663b99f\u003c/code\u003e\u003c/a\u003e fix: alias \u003ccode\u003eagent\u003c/code\u003e reporter to \u003ccode\u003eminimal\u003c/code\u003e (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10157\"\u003e#10157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable 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 `@tailwindcss/postcss` from 4.2.2 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/postcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/postcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/12eb5ae7b6026ff64c04f889b2221418d772da72\"\u003e\u003ccode\u003e12eb5ae\u003c/code\u003e\u003c/a\u003e Cleanup noisy test output (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4255671c5f792c42808ecd6b2dec27c16e3c559e\"\u003e\u003ccode\u003e4255671\u003c/code\u003e\u003c/a\u003e Improve snapshot tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52f94c74bb491e9c3641ce322a0ef90fb3c45de6\"\u003e\u003ccode\u003e52f94c7\u003c/code\u003e\u003c/a\u003e Improve codebase quality (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19999\"\u003e#19999\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/bfb5732b0b948d89c6803cb537bca168ec8e0a46\"\u003e\u003ccode\u003ebfb5732\u003c/code\u003e\u003c/a\u003e Fall back to the plugin \u003ccode\u003ebase\u003c/code\u003e when PostCSS has no \u003ccode\u003efrom\u003c/code\u003e option (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/3a890c35727fe0630c59b72dbec799d02e3c4800\"\u003e\u003ccode\u003e3a890c3\u003c/code\u003e\u003c/a\u003e Bump dependencies (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-postcss\"\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 \u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.58.2 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equ...\n\n_Description has been truncated_","html_url":"https://github.com/buggyblues/shadow/pull/335","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/buggyblues%2Fshadow/issues/335","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/335/packages"}},{"old_version":"1.59.1","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-31T01:34:09.000Z","version_change":"1.59.1 → 1.60.0","issue":{"uuid":"4556242045","node_id":"PR_kwDORH7BOc7hByyJ","number":1076,"state":"open","title":"build(deps-dev): Bump @playwright/test from 1.59.1 to 1.60.0","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-31T01:34:09.000Z","updated_at":"2026-05-31T01:42:47.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps-dev): Bump","packages":[{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.59.1 to 1.60.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@playwright/test\u0026package-manager=npm_and_yarn\u0026previous-version=1.59.1\u0026new-version=1.60.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/siro33950/releash/pull/1076","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/siro33950%2Freleash/issues/1076","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1076/packages"}},{"old_version":"1.58.2","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-30T21:52:33.000Z","version_change":"1.58.2 → 1.60.0","issue":{"uuid":"4555804740","node_id":"PR_kwDOB6BcMc7hAgdk","number":746,"state":"open","title":"Bump @playwright/test from 1.58.2 to 1.60.0","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T21:52:33.000Z","updated_at":"2026-05-30T21:54:28.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.58.2 to 1.60.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@playwright/test\u0026package-manager=npm_and_yarn\u0026previous-version=1.58.2\u0026new-version=1.60.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/NYPL/nypl-library-card-app/pull/746","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/NYPL%2Fnypl-library-card-app/issues/746","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/746/packages"}},{"old_version":"1.58.2","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-30T20:06:05.000Z","version_change":"1.58.2 → 1.60.0","issue":{"uuid":"4555545446","node_id":"PR_kwDOQv1DUM7g_vME","number":171,"state":"closed","title":"chore(deps-dev): bump the development-dependencies group across 1 directory with 29 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-05-30T23:14:43.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-30T20:06:05.000Z","updated_at":"2026-05-30T23:14:44.000Z","time_to_close":11318,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"development-dependencies","update_count":29,"packages":[{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tailwindcss/postcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/vite","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":"@types/node","old_version":"20.19.35","new_version":"20.19.41","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.56.1","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.56.1","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"@vitest/coverage-v8","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/ui","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"autoprefixer","old_version":"10.4.27","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"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":"eslint","old_version":"10.0.2","new_version":"10.4.1","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":"fast-check","old_version":"4.5.3","new_version":"4.8.0","repository_url":"https://github.com/dubzzz/fast-check"},{"name":"globals","old_version":"17.4.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"happy-dom","old_version":"20.7.0","new_version":"20.9.0","repository_url":"https://github.com/capricorn86/happy-dom"},{"name":"jsdom","old_version":"28.1.0","new_version":"29.1.1","repository_url":"https://github.com/jsdom/jsdom"},{"name":"lint-staged","old_version":"16.3.1","new_version":"17.0.6","repository_url":"https://github.com/lint-staged/lint-staged"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"rollup","old_version":"4.59.0","new_version":"4.60.4","repository_url":"https://github.com/rollup/rollup"},{"name":"turbo","old_version":"2.8.12","new_version":"2.9.16","repository_url":"https://github.com/vercel/turborepo"},{"name":"typescript-eslint","old_version":"8.56.1","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"vite","old_version":"7.3.1","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development-dependencies group with 26 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.1` | `4.3.0` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `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| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `20.19.35` | `20.19.41` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.1` | `8.60.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.1` | `8.60.0` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.2` |\n| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.0.18` | `4.1.7` |\n| [@vitest/ui](https://github.com/vitest-dev/vitest/tree/HEAD/packages/ui) | `4.0.18` | `4.1.7` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.27` | `10.5.0` |\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| [eslint](https://github.com/eslint/eslint) | `10.0.2` | `10.4.1` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [fast-check](https://github.com/dubzzz/fast-check/tree/HEAD/packages/fast-check) | `4.5.3` | `4.8.0` |\n| [globals](https://github.com/sindresorhus/globals) | `17.4.0` | `17.6.0` |\n| [happy-dom](https://github.com/capricorn86/happy-dom) | `20.7.0` | `20.9.0` |\n| [jsdom](https://github.com/jsdom/jsdom) | `28.1.0` | `29.1.1` |\n| [lint-staged](https://github.com/lint-staged/lint-staged) | `16.3.1` | `17.0.6` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [rollup](https://github.com/rollup/rollup) | `4.59.0` | `4.60.4` |\n| [turbo](https://github.com/vercel/turborepo) | `2.8.12` | `2.9.16` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.1` | `8.60.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.1` | `8.0.14` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n\n\nUpdates `@playwright/test` from 1.58.2 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/postcss` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/postcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/postcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/12eb5ae7b6026ff64c04f889b2221418d772da72\"\u003e\u003ccode\u003e12eb5ae\u003c/code\u003e\u003c/a\u003e Cleanup noisy test output (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4255671c5f792c42808ecd6b2dec27c16e3c559e\"\u003e\u003ccode\u003e4255671\u003c/code\u003e\u003c/a\u003e Improve snapshot tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52f94c74bb491e9c3641ce322a0ef90fb3c45de6\"\u003e\u003ccode\u003e52f94c7\u003c/code\u003e\u003c/a\u003e Improve codebase quality (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19999\"\u003e#19999\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/bfb5732b0b948d89c6803cb537bca168ec8e0a46\"\u003e\u003ccode\u003ebfb5732\u003c/code\u003e\u003c/a\u003e Fall back to the plugin \u003ccode\u003ebase\u003c/code\u003e when PostCSS has no \u003ccode\u003efrom\u003c/code\u003e option (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/3a890c35727fe0630c59b72dbec799d02e3c4800\"\u003e\u003ccode\u003e3a890c3\u003c/code\u003e\u003c/a\u003e Bump dependencies (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-postcss\"\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 \u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/vite` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/vite's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/vite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/db27049caaae08978995f25b61f8336f543a4640\"\u003e\u003ccode\u003edb27049\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​tailwindcss/vite\u003c/code\u003e): include \u003ca href=\"https://github.com/variant\"\u003e\u003ccode\u003e@​variant\u003c/code\u003e\u003c/a\u003e in feature detection (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/5a799900d4b43ca4902398a38c6f0a5b37a98ed9\"\u003e\u003ccode\u003e5a79990\u003c/code\u003e\u003c/a\u003e Always resolve relative files, relative to the current .css file (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/f3fdda2a5cb9de50c897c79003aa58182cd9269b\"\u003e\u003ccode\u003ef3fdda2\u003c/code\u003e\u003c/a\u003e fix(vite): avoid resolving JS plugins to browser CSS entries (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/5cb1efdf416a6d37012d31cc1306c41cb35bbdc1\"\u003e\u003ccode\u003e5cb1efd\u003c/code\u003e\u003c/a\u003e fix(vite): resolve tsconfig paths in CSS and JS resolvers (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19803\"\u003e#19803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d596b0c43d36ad5099c983930fb155e089cbc291\"\u003e\u003ccode\u003ed596b0c\u003c/code\u003e\u003c/a\u003e 4.2.2 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19821\"\u003e#19821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-vite\"\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 \u003ccode\u003e@​tailwindcss/vite\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-query-devtools` from 5.91.3 to 5.100.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query-devtools's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\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/TanStack/query/blob/main/packages/react-query-devtools/CHANGELOG.md\"\u003e@​tanstack/react-query-devtools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/4d130b992d2ac396d75f921bfc530dd3a9d50577\"\u003e\u003ccode\u003e4d130b9\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/3d21cacdec3028b700c4c2e3e0ff8dbe7a235e8c\"\u003e\u003ccode\u003e3d21cac\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\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/TanStack/query/commit/ba6e7beebd50143408f01fcf5d9aee2ec1486f60\"\u003e\u003ccode\u003eba6e7be\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10767\"\u003e#10767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/05cf2bc0a4eae64959dc8a40152e2878190c971b\"\u003e\u003ccode\u003e05cf2bc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10758\"\u003e#10758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/5ff4f6936bb66a64267eb4413430f956eecf7248\"\u003e\u003ccode\u003e5ff4f69\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10755\"\u003e#10755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/03eba38ae9f9367022316d802d827a8460edcab7\"\u003e\u003ccode\u003e03eba38\u003c/code\u003e\u003c/a\u003e test(react-query-devtools): add tests for missing 'QueryClient', context prov...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3ae42619e5713b2fd6916760e84f7c9ddaa7a317\"\u003e\u003ccode\u003e3ae4261\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10620\"\u003e#10620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query-devtools@5.100.14/packages/react-query-devtools\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@types/node` from 20.19.35 to 20.19.41\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/node\"\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.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.1 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.c...\n\n_Description has been truncated_","html_url":"https://github.com/brandonlacoste9-tech/ZyeuteV5/pull/171","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/brandonlacoste9-tech%2FZyeuteV5/issues/171","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/171/packages"}},{"old_version":"1.58.2","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-30T18:56:52.000Z","version_change":"1.58.2 → 1.60.0","issue":{"uuid":"4555364383","node_id":"PR_kwDOCwJcbs7g_LjM","number":1421,"state":"open","title":"Bump the development group across 1 directory with 15 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T18:56:52.000Z","updated_at":"2026-05-30T18:56:56.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"development","update_count":15,"packages":[{"name":"@changesets/changelog-github","old_version":"0.5.2","new_version":"0.7.0","repository_url":"https://github.com/changesets/changesets"},{"name":"@changesets/cli","old_version":"2.29.8","new_version":"2.31.0","repository_url":"https://github.com/changesets/changesets"},{"name":"markdownlint-cli","old_version":"0.46.0","new_version":"0.48.0","repository_url":"https://github.com/igorshubovych/markdownlint-cli"},{"name":"vitest-browser-react","old_version":"2.0.2","new_version":"2.2.0","repository_url":"https://github.com/vitest-community/vitest-browser-react"},{"name":"node-html-parser","old_version":"6.1.13","new_version":"7.1.0","repository_url":"https://github.com/taoqf/node-fast-html-parser"},{"name":"@faker-js/faker","old_version":"7.6.0","new_version":"10.4.0","repository_url":"https://github.com/faker-js/faker"},{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"lodash","old_version":"4.17.21","new_version":"4.18.1","repository_url":"https://github.com/lodash/lodash"},{"name":"@types/lodash","old_version":"4.17.21","new_version":"4.17.24","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"uuid","old_version":"11.1.0","new_version":"14.0.0","repository_url":"https://github.com/uuidjs/uuid"},{"name":"tsx","old_version":"4.20.6","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"},{"name":"@tailwindcss/browser","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@types/estree","old_version":"1.0.8","new_version":"1.0.9","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"prettier","old_version":"3.7.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"unist-util-visit","old_version":"5.0.0","new_version":"5.1.0","repository_url":"https://github.com/syntax-tree/unist-util-visit"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development group with 15 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@changesets/changelog-github](https://github.com/changesets/changesets) | `0.5.2` | `0.7.0` |\n| [@changesets/cli](https://github.com/changesets/changesets) | `2.29.8` | `2.31.0` |\n| [markdownlint-cli](https://github.com/igorshubovych/markdownlint-cli) | `0.46.0` | `0.48.0` |\n| [vitest-browser-react](https://github.com/vitest-community/vitest-browser-react) | `2.0.2` | `2.2.0` |\n| [node-html-parser](https://github.com/taoqf/node-fast-html-parser) | `6.1.13` | `7.1.0` |\n| [@faker-js/faker](https://github.com/faker-js/faker) | `7.6.0` | `10.4.0` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [lodash](https://github.com/lodash/lodash) | `4.17.21` | `4.18.1` |\n| [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) | `4.17.21` | `4.17.24` |\n| [uuid](https://github.com/uuidjs/uuid) | `11.1.0` | `14.0.0` |\n| [tsx](https://github.com/privatenumber/tsx) | `4.20.6` | `4.22.3` |\n| [@tailwindcss/browser](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-browser) | `4.2.1` | `4.3.0` |\n| [@types/estree](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/estree) | `1.0.8` | `1.0.9` |\n| [prettier](https://github.com/prettier/prettier) | `3.7.1` | `3.8.3` |\n| [unist-util-visit](https://github.com/syntax-tree/unist-util-visit) | `5.0.0` | `5.1.0` |\n\n\nUpdates `@changesets/changelog-github` from 0.5.2 to 0.7.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/changesets/changesets/releases\"\u003e@​changesets/changelog-github's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​changesets/changelog-github\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.7.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1255\"\u003e#1255\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/94578cf164aa7abcb12b97dd3a55d12a324f4fe8\"\u003e\u003ccode\u003e94578cf\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Kauhsa\"\u003e\u003ccode\u003e@​Kauhsa\u003c/code\u003e\u003c/a\u003e! - Added \u003ccode\u003edisableThanks\u003c/code\u003e option\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​changesets/changelog-github\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.6.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1850\"\u003e#1850\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/fd0bc2e997a7bf603415489d10fcac0ca129badf\"\u003e\u003ccode\u003efd0bc2e\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mixelburg\"\u003e\u003ccode\u003e@​mixelburg\u003c/code\u003e\u003c/a\u003e! - Linkify issue references in changelog entries.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1810\"\u003e#1810\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/27fd8f41dddafcc2e96e7df39dca04d92f916a0a\"\u003e\u003ccode\u003e27fd8f4\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/hirasso\"\u003e\u003ccode\u003e@​hirasso\u003c/code\u003e\u003c/a\u003e! - Replace deprecated \u003ccode\u003eString.prototype.trimRight\u003c/code\u003e with \u003ca href=\"https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/trimEnd\"\u003e\u003ccode\u003eString.prototype.trimEnd\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/changesets/changesets/commit/d4b8ad8158fe4d900abc5052dacaa8be1f41a232\"\u003e\u003ccode\u003ed4b8ad8\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/changesets/changesets/commit/e462d892af560d0e3cf5d2f04da230751fbd05ca\"\u003e\u003ccode\u003ee462d89\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/get-github-info\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.8.0\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/changesets/changesets/commit/d1ef2d8cc11f86042a82f0cf7b125021e24dafc4\"\u003e\u003ccode\u003ed1ef2d8\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1950\"\u003e#1950\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/7af587636b8e793cc43fc6a52d32598193fcb68e\"\u003e\u003ccode\u003e7af5876\u003c/code\u003e\u003c/a\u003e Restrict \u003ccode\u003epublish\u003c/code\u003e job to the \u003ccode\u003enpm\u003c/code\u003e env (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1972\"\u003e#1972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/ff767d2da25173bcab643826702b2af74cbf08cf\"\u003e\u003ccode\u003eff767d2\u003c/code\u003e\u003c/a\u003e Sync config-file-options documentation with schema.json and source code (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1683\"\u003e#1683\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/951094babb7c356536c243e9cca0faa3ec86360a\"\u003e\u003ccode\u003e951094b\u003c/code\u003e\u003c/a\u003e fix: pin 2 unpinned action(s) (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1915\"\u003e#1915\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/94578cf164aa7abcb12b97dd3a55d12a324f4fe8\"\u003e\u003ccode\u003e94578cf\u003c/code\u003e\u003c/a\u003e Added \u003ccode\u003edisableThanks\u003c/code\u003e option (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1255\"\u003e#1255\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/d87334df92a36788e778b21e2bc603beb754f0d5\"\u003e\u003ccode\u003ed87334d\u003c/code\u003e\u003c/a\u003e Support dark mode banner in readme (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1943\"\u003e#1943\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/87472a757062402ca121bd168d693a1be866cf45\"\u003e\u003ccode\u003e87472a7\u003c/code\u003e\u003c/a\u003e Update .vscode/settings.json (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1944\"\u003e#1944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/317a373aef2639e4ca2804f20aeb4af5338c41ca\"\u003e\u003ccode\u003e317a373\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003epublish_pr\u003c/code\u003e job\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/9cce6db18ddecbf7f9cded45254b9905b19a7516\"\u003e\u003ccode\u003e9cce6db\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://redirect.github.com/changesets/changesets/issues/1897\"\u003e#1897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/d2121dc3d86b55f76de6022ccfcde843ed4b884a\"\u003e\u003ccode\u003ed2121dc\u003c/code\u003e\u003c/a\u003e Fix npm auth for path-based registries during publish by preserving configure...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/changesets/changesets/compare/@changesets/read@0.5.2...@changesets/changelog-github@0.7.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 \u003ccode\u003e@​changesets/changelog-github\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@changesets/cli` from 2.29.8 to 2.31.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/changesets/changesets/releases\"\u003e@​changesets/cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​changesets/cli\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.31.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/changesets/changesets/pull/1889\"\u003e#1889\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/96ca062272605c14f77a64043f50a0a3a278c57f\"\u003e\u003ccode\u003e96ca062\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mixelburg\"\u003e\u003ccode\u003e@​mixelburg\u003c/code\u003e\u003c/a\u003e! - Error on unsupported flags for individual CLI commands and print the matching command usage to make mistakes easier to spot.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1873\"\u003e#1873\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/42943b74d7a455ed03b93dd85e1c0a15f45db37f\"\u003e\u003ccode\u003e42943b7\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mixelburg\"\u003e\u003ccode\u003e@​mixelburg\u003c/code\u003e\u003c/a\u003e! - Respond to \u003ccode\u003e--help\u003c/code\u003e on all subcommands. Previously, \u003ccode\u003e--help\u003c/code\u003e was only handled when it was the sole argument; passing it alongside a subcommand (e.g. \u003ccode\u003echangeset version --help\u003c/code\u003e) would silently execute the command instead. Now \u003ccode\u003e--help\u003c/code\u003e always exits early and prints per-command usage when a known subcommand is provided, or the general help text otherwise.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/changesets/changesets/commit/d2121dc3d86b55f76de6022ccfcde843ed4b884a\"\u003e\u003ccode\u003ed2121dc\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Andarist\"\u003e\u003ccode\u003e@​Andarist\u003c/code\u003e\u003c/a\u003e! - Fix npm auth for path-based registries during publish by preserving configured registry URLs instead of normalizing them.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1888\"\u003e#1888\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/036fdd451367226d0f2cd8af1e0a7f37a65e3464\"\u003e\u003ccode\u003e036fdd4\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mixelburg\"\u003e\u003ccode\u003e@​mixelburg\u003c/code\u003e\u003c/a\u003e! - Fix several \u003ccode\u003echangeset version\u003c/code\u003e issues with workspace protocol dependencies. Valid explicit \u003ccode\u003eworkspace:\u003c/code\u003e ranges and aliases are no longer rewritten unnecessarily, and workspace path references are handled correctly during versioning.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1903\"\u003e#1903\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/5c4731fea82ce880500ac5e1c55ff372f7a4efe2\"\u003e\u003ccode\u003e5c4731f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Andarist\"\u003e\u003ccode\u003e@​Andarist\u003c/code\u003e\u003c/a\u003e! - Gracefully handle stale \u003ccode\u003enpm info\u003c/code\u003e data leading to duplicate publish attempts.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1867\"\u003e#1867\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/f61e7166c349d4934e4acc9b47f3d028c212ecc1\"\u003e\u003ccode\u003ef61e716\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Andarist\"\u003e\u003ccode\u003e@​Andarist\u003c/code\u003e\u003c/a\u003e! - Improved detection for \u003ccode\u003epublished\u003c/code\u003e state of prerelease-only packages without \u003ccode\u003elatest\u003c/code\u003e dist-tag on GitHub Packages registry.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [\u003ca href=\"https://github.com/changesets/changesets/commit/036fdd451367226d0f2cd8af1e0a7f37a65e3464\"\u003e\u003ccode\u003e036fdd4\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/changesets/changesets/commit/036fdd451367226d0f2cd8af1e0a7f37a65e3464\"\u003e\u003ccode\u003e036fdd4\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/changesets/changesets/commit/036fdd451367226d0f2cd8af1e0a7f37a65e3464\"\u003e\u003ccode\u003e036fdd4\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/assemble-release-plan\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.0.10\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/get-dependents-graph\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.1.4\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/apply-release-plan\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.1.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/get-release-plan\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.0.16\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​changesets/config\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.1.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​changesets/cli\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.30.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/changesets/changesets/pull/1840\"\u003e#1840\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/057cca222321816b6c8c6f6c52130185b364de36\"\u003e\u003ccode\u003e057cca2\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/wotan-allfather\"\u003e\u003ccode\u003e@​wotan-allfather\u003c/code\u003e\u003c/a\u003e! - Add \u003ccode\u003e--since\u003c/code\u003e flag to \u003ccode\u003eadd\u003c/code\u003e command\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eadd\u003c/code\u003e command now supports a \u003ccode\u003e--since\u003c/code\u003e flag that allows you to specify which branch, tag, or git ref to use when detecting changed packages. This is useful for gitflow workflows where you have multiple target branches and the \u003ccode\u003ebaseBranch\u003c/code\u003e config option doesn't cover all use cases.\u003c/p\u003e\n\u003cp\u003eExample: \u003ccode\u003echangeset add --since=develop\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003eIf not provided, the command falls back to the \u003ccode\u003ebaseBranch\u003c/code\u003e value in your \u003ccode\u003e.changeset/config.json\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1845\"\u003e#1845\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/2b4a66a36497fd5504186dcc6ae9e287c8403de6\"\u003e\u003ccode\u003e2b4a66a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Andarist\"\u003e\u003ccode\u003e@​Andarist\u003c/code\u003e\u003c/a\u003e! - Delegate OTP prompting to the package manager instead of handling it in-process. This allows Changesets to use the package manager's native web auth support.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1774\"\u003e#1774\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/667fe5aacf04dbefcf2532584ff2753b8417855a\"\u003e\u003ccode\u003e667fe5a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/bluwy\"\u003e\u003ccode\u003e@​bluwy\u003c/code\u003e\u003c/a\u003e! - Support importing custom \u003ccode\u003ecommit\u003c/code\u003e option ES module. Previously, it used \u003ccode\u003erequire()\u003c/code\u003e which only worked for CJS modules, however now it uses \u003ccode\u003eimport()\u003c/code\u003e which supports both CJS and ES modules.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1839\"\u003e#1839\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/73b18099517b00a3c7b70c417b7f7f1bfaa24931\"\u003e\u003ccode\u003e73b1809\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/leochiu-a\"\u003e\u003ccode\u003e@​leochiu-a\u003c/code\u003e\u003c/a\u003e! - Add a \u003ccode\u003e--message\u003c/code\u003e (\u003ccode\u003e-m\u003c/code\u003e) flag to \u003ccode\u003echangeset add\u003c/code\u003e (and default \u003ccode\u003echangeset\u003c/code\u003e) so the changeset summary can be provided from the command line. When \u003ccode\u003e--message\u003c/code\u003e is present, the summary prompt is skipped while the final confirmation step is kept.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1806\"\u003e#1806\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/0e8e01e93358bdc8c318c608dd3b0e4af8219049\"\u003e\u003ccode\u003e0e8e01e\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/luisadame\"\u003e\u003ccode\u003e@​luisadame\u003c/code\u003e\u003c/a\u003e! - Changeset CLI can now be run from the nested directories in the project, where the \u003ccode\u003e.changeset\u003c/code\u003e directory has to be found in one of the parent directories\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1849\"\u003e#1849\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/9dc32308e4d208964b648a788ba4eee1003c273c\"\u003e\u003ccode\u003e9dc3230\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Andarist\"\u003e\u003ccode\u003e@​Andarist\u003c/code\u003e\u003c/a\u003e! - Compute the terminal's size lazily to avoid spurious stderr output in non-interactive mode\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1857\"\u003e#1857\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/2a7302577d2923dc7db5025003d8aa58fb627ff9\"\u003e\u003ccode\u003e2a73025\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mixelburg\"\u003e\u003ccode\u003e@​mixelburg\u003c/code\u003e\u003c/a\u003e! - Fix confusing prompt labels when entering changeset summary after external editor fallback\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/changesets/changesets/pull/1842\"\u003e#1842\u003c/a\u003e \u003ca href=\"https://github.com/changesets/changesets/commit/6df3a5e95522a0210cb2b5619588a75f32b502c6\"\u003e\u003ccode\u003e6df3a5e\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/RodrigoHamuy\"\u003e\u003ccode\u003e@​RodrigoHamuy\u003c/code\u003e\u003c/a\u003e! - Allow private packages to depend on skipped packages without requiring them to also be skipped. Private packages are not published to npm, so it is safe for them to have dependencies on ignored or unversioned packages.\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\u003eSee full diff in \u003ca href=\"https://github.com/changesets/changesets/commits/@changesets/cli@2.31.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 \u003ccode\u003e@​changesets/cli\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `markdownlint-cli` from 0.46.0 to 0.48.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/releases\"\u003emarkdownlint-cli's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.48.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate all dependencies via \u003ccode\u003eDependabot\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.47.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd output and exit code support for warnings\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003emarkdownlint\u003c/code\u003e dependency to \u003ccode\u003e0.40.0\u003c/code\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003eMD011\u003c/code\u003e/\u003ccode\u003eMD013\u003c/code\u003e/\u003ccode\u003eMD051\u003c/code\u003e/\u003ccode\u003eMD060\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpdate all dependencies via \u003ccode\u003eDependabot\u003c/code\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/igorshubovych/markdownlint-cli/commit/e72a3ca1632f0b11a07d171449fe447a7ff6795e\"\u003e\u003ccode\u003ee72a3ca\u003c/code\u003e\u003c/a\u003e Bump version 0.48.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/02c613244e102596373d7fe5e2490e4ab71f294f\"\u003e\u003ccode\u003e02c6132\u003c/code\u003e\u003c/a\u003e Delete and recreate package-lock.json via \u0026quot;npm install\u0026quot;.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/800b47cc24e662e0f97340d9675082f7f4a83a9d\"\u003e\u003ccode\u003e800b47c\u003c/code\u003e\u003c/a\u003e Bump ava from 6.4.1 to 7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/e6eb97c2d4a56b505e5430b26b5408925f88f80a\"\u003e\u003ccode\u003ee6eb97c\u003c/code\u003e\u003c/a\u003e Bump minimatch\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/61da922d8f906b1e377cf21f0db0a3b2b2c6d311\"\u003e\u003ccode\u003e61da922\u003c/code\u003e\u003c/a\u003e Bump tar from 7.5.7 to 7.5.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/3731696fb0cfd49ce7cb68ab53d187505d2fd400\"\u003e\u003ccode\u003e3731696\u003c/code\u003e\u003c/a\u003e Bump minimatch from 10.2.0 to 10.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/d60f5af730c855a26017784c73b82e4cbe5d6163\"\u003e\u003ccode\u003ed60f5af\u003c/code\u003e\u003c/a\u003e Bump minimatch from 10.1.2 to 10.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/587b174eac1da62cb138642273204597475b76d7\"\u003e\u003ccode\u003e587b174\u003c/code\u003e\u003c/a\u003e Bump markdown-it from 14.1.0 to 14.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/c3bfec983fb2b11f1876a00e2217f39e0087f27a\"\u003e\u003ccode\u003ec3bfec9\u003c/code\u003e\u003c/a\u003e Bump minimatch from 10.1.1 to 10.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/commit/1fba9587576b1988216d1e215b2c6d5f687e4381\"\u003e\u003ccode\u003e1fba958\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003e@​isaacs/brace-expansion\u003c/code\u003e from 5.0.0 to 5.0.1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/igorshubovych/markdownlint-cli/compare/v0.46.0...v0.48.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vitest-browser-react` from 2.0.2 to 2.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/releases\"\u003evitest-browser-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003ecreateRootOptions\u003c/code\u003e to \u003ccode\u003eComponentRenderOptions\u003c/code\u003e  -  by \u003ca href=\"https://github.com/nstepien\"\u003e\u003ccode\u003e@​nstepien\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/53\"\u003evitest-community/vitest-browser-react#53\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/8803d53\"\u003e\u003c!-- raw HTML omitted --\u003e(8803d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003epage.renderHook\u003c/code\u003e  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/54\"\u003evitest-community/vitest-browser-react#54\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/3838945\"\u003e\u003c!-- raw HTML omitted --\u003e(38389)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.1.0...v2.2.0\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eIntegrate trace mark with render  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/47\"\u003evitest-community/vitest-browser-react#47\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/2b9835d\"\u003e\u003c!-- raw HTML omitted --\u003e(2b983)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate links to api documentation  -  by \u003ca href=\"https://github.com/nilshartmann\"\u003e\u003ccode\u003e@​nilshartmann\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/48\"\u003evitest-community/vitest-browser-react#48\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/91885dd\"\u003e\u003c!-- raw HTML omitted --\u003e(91885)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.0.5...v2.1.0\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.0.5\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid act warnings  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/46\"\u003evitest-community/vitest-browser-react#46\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/76a2765\"\u003e\u003c!-- raw HTML omitted --\u003e(76a27)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.0.4...v2.0.5\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.0.4\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInject a consistent testid  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/45\"\u003evitest-community/vitest-browser-react#45\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/f5c883a\"\u003e\u003c!-- raw HTML omitted --\u003e(f5c88)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.0.3...v2.0.4\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.0.3\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse a simple counter for act  -  by \u003ca href=\"https://github.com/ocavue\"\u003e\u003ccode\u003e@​ocavue\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/43\"\u003evitest-community/vitest-browser-react#43\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/8b122d2\"\u003e\u003c!-- raw HTML omitted --\u003e(8b122)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAttach a stable testid to default \u003ccode\u003ebaseElement\u003c/code\u003e and \u003ccode\u003econtainer\u003c/code\u003e  -  by \u003ca href=\"https://github.com/nizans\"\u003e\u003ccode\u003e@​nizans\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/44\"\u003evitest-community/vitest-browser-react#44\u003c/a\u003e \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/e8acbcb\"\u003e\u003c!-- raw HTML omitted --\u003e(e8acb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWarning:\u003c/strong\u003e If you are using snapshots with \u003ccode\u003econtainer\u003c/code\u003e, update to Vitest 4.0.18 to avoid rendering injected \u003ccode\u003edata-testid\u003c/code\u003e attribute.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.0.2...v2.0.3\"\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-community/vitest-browser-react/commit/8de0ed7fb3a9a90df86e69489b722bb24ffeadbb\"\u003e\u003ccode\u003e8de0ed7\u003c/code\u003e\u003c/a\u003e chore: release v2.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/383894510b9fc5f8ce06678c473a546839b55084\"\u003e\u003ccode\u003e3838945\u003c/code\u003e\u003c/a\u003e feat: expose \u003ccode\u003epage.renderHook\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/54\"\u003e#54\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/8803d53b6b7a7dc2f55c6363188653efece4be5b\"\u003e\u003ccode\u003e8803d53\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003ecreateRootOptions\u003c/code\u003e to \u003ccode\u003eComponentRenderOptions\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/53\"\u003e#53\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/fa58d74d265ef4ed56d61df5f1c9907e7d9dcebe\"\u003e\u003ccode\u003efa58d74\u003c/code\u003e\u003c/a\u003e chore: release v2.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/2b9835db315aa01afcde460d7c41d08634f31585\"\u003e\u003ccode\u003e2b9835d\u003c/code\u003e\u003c/a\u003e feat: integrate trace mark with render (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/47\"\u003e#47\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/91885dda84a285e96de5aeb7b172118515ca3e65\"\u003e\u003ccode\u003e91885dd\u003c/code\u003e\u003c/a\u003e fix: update links to api documentation (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/48\"\u003e#48\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/2ab4b715bc31ea2d27ae35ea4ecef71a25efe094\"\u003e\u003ccode\u003e2ab4b71\u003c/code\u003e\u003c/a\u003e chore: release v2.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/76a2765d64b3a01341105b0d7d8ca3800f4698aa\"\u003e\u003ccode\u003e76a2765\u003c/code\u003e\u003c/a\u003e fix: avoid act warnings (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/46\"\u003e#46\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/df16d16dbf4bf0714405260d1b5f7d751e5d49ac\"\u003e\u003ccode\u003edf16d16\u003c/code\u003e\u003c/a\u003e chore: release v2.0.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-community/vitest-browser-react/commit/f5c883a694316391190aa4b914ee8058276a8e44\"\u003e\u003ccode\u003ef5c883a\u003c/code\u003e\u003c/a\u003e fix: inject a consistent testid (\u003ca href=\"https://redirect.github.com/vitest-community/vitest-browser-react/issues/45\"\u003e#45\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vitest-community/vitest-browser-react/compare/v2.0.2...v2.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `node-html-parser` from 6.1.13 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/taoqf/node-fast-html-parser/releases\"\u003enode-html-parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev7.1.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.2...v7.1.0\"\u003e7.1.0\u003c/a\u003e (2026-03-03)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd option closeAllOnClosing (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/44c900acc01b8923eb9e45c7b13d6bd148a8e9cd\"\u003e44c900a\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/294\"\u003e#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd preserveTagNesting option to maintain invalid HTML nesting \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/295\"\u003e#295\u003c/a\u003e (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/d604652cc7c963118ba16ec6bda1f4e01fb81c9e\"\u003ed604652\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd missing dev dependency: yarn (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/8679d3231e6dc1c93f99921d16b728aa9a578ce5\"\u003e8679d32\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.0.2\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.1...v7.0.2\"\u003e7.0.2\u003c/a\u003e (2026-01-07)\u003c/h3\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/227\"\u003e#227\u003c/a\u003e (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/51528c41ef2648d6c4dc1aecd14ee9d2b0083c4f\"\u003e51528c4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/294\"\u003e#294\u003c/a\u003e Closing tag is missing but valid HTML is still not parseable (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/950865fab5f4df7853b36712869b71c90f4d3a1b\"\u003e950865f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd missing dev dependency: yarn (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/6d73ea37c48f4170c35907869ba410c5122a9a1f\"\u003e6d73ea3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etest valid.js (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/a81fc46fab2507615b0362150d62568a6f52ee4e\"\u003ea81fc46\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev7.0.1\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.0...v7.0.1\"\u003e7.0.1\u003c/a\u003e (2024-12-26)\u003c/h3\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade node version (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/efd77ff93593922512b12216984ba778b2f46593\"\u003eefd77ff\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/taoqf/node-html-parser/blob/main/CHANGELOG.md\"\u003enode-html-parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.2...v7.1.0\"\u003e7.1.0\u003c/a\u003e (2026-03-03)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd option closeAllOnClosing (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/44c900acc01b8923eb9e45c7b13d6bd148a8e9cd\"\u003e44c900a\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/294\"\u003e#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd preserveTagNesting option to maintain invalid HTML nesting \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/295\"\u003e#295\u003c/a\u003e (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/d604652cc7c963118ba16ec6bda1f4e01fb81c9e\"\u003ed604652\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd missing dev dependency: yarn (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/8679d3231e6dc1c93f99921d16b728aa9a578ce5\"\u003e8679d32\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.1...v7.0.2\"\u003e7.0.2\u003c/a\u003e (2026-01-07)\u003c/h3\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/227\"\u003e#227\u003c/a\u003e (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/51528c41ef2648d6c4dc1aecd14ee9d2b0083c4f\"\u003e51528c4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/294\"\u003e#294\u003c/a\u003e Closing tag is missing but valid HTML is still not parseable (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/950865fab5f4df7853b36712869b71c90f4d3a1b\"\u003e950865f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd missing dev dependency: yarn (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/6d73ea37c48f4170c35907869ba410c5122a9a1f\"\u003e6d73ea3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003etest valid.js (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/a81fc46fab2507615b0362150d62568a6f52ee4e\"\u003ea81fc46\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v7.0.0...v7.0.1\"\u003e7.0.1\u003c/a\u003e (2024-12-26)\u003c/h3\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade node version (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/efd77ff93593922512b12216984ba778b2f46593\"\u003eefd77ff\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v6.1.14...v7.0.0\"\u003e7.0.0\u003c/a\u003e (2024-12-26)\u003c/h2\u003e\n\u003ch3\u003e⚠ BREAKING CHANGES\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/277\"\u003e#277\u003c/a\u003e, for that change estarget to es6\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/277\"\u003e#277\u003c/a\u003e, for that change estarget to es6 (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/432a3e71ba219e76188bcc2e89e525e40911d164\"\u003e432a3e7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd tests for \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/227\"\u003e#227\u003c/a\u003e (\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/commit/5856ee2ef2a0dfef43d75f6d4d13c37c213f25cf\"\u003e5856ee2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v6.1.13...v6.1.14\"\u003e6.1.14\u003c/a\u003e (2024-05-14)\u003c/h3\u003e\n\u003ch3\u003eBug 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/taoqf/node-html-parser/commit/ea54b3aadd6a1d2bfeeef96ef980b3681e8fe4a3\"\u003e\u003ccode\u003eea54b3a\u003c/code\u003e\u003c/a\u003e chore(release): 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/3e1761938f14f49ffaf64f0a69c980a808ca6855\"\u003e\u003ccode\u003e3e17619\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/303\"\u003e#303\u003c/a\u003e from thomome/htmlElement-matches\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/405ccb29c690342aafe2b7efbf744d67027ab96c\"\u003e\u003ccode\u003e405ccb2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/299\"\u003e#299\u003c/a\u003e from ig3/close-tags\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/8c26d8694e3c1ca92b6ef2b286d5febf3d31e52a\"\u003e\u003ccode\u003e8c26d86\u003c/code\u003e\u003c/a\u003e fixed readme return type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/c1098fc5a05a4ddb3de271e2473103531d2aec5b\"\u003e\u003ccode\u003ec1098fc\u003c/code\u003e\u003c/a\u003e added tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/13c0b1bc0d7da560acbcef5643b0f391020c8d38\"\u003e\u003ccode\u003e13c0b1b\u003c/code\u003e\u003c/a\u003e added matches method to HTMLElement\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/d604652cc7c963118ba16ec6bda1f4e01fb81c9e\"\u003e\u003ccode\u003ed604652\u003c/code\u003e\u003c/a\u003e feat: add preserveTagNesting option to maintain invalid HTML nesting \u003ca href=\"https://redirect.github.com/taoqf/node-fast-html-parser/issues/295\"\u003e#295\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/c4cc706482bcdf58e46b9a5e1ce5e969c0c94256\"\u003e\u003ccode\u003ec4cc706\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into close-tags\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/eac4de9c9c62b4739b7e959dface8749c5783ae8\"\u003e\u003ccode\u003eeac4de9\u003c/code\u003e\u003c/a\u003e Revert addition of yarn as a dependency\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/taoqf/node-html-parser/commit/f7a190c596a8e153eb674502ffbe1ca5756b5773\"\u003e\u003ccode\u003ef7a190c\u003c/code\u003e\u003c/a\u003e chore(release): 7.0.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/taoqf/node-fast-html-parser/compare/v6.1.13...v7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@faker-js/faker` from 7.6.0 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/faker-js/faker/releases\"\u003e@​faker-js/faker's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(locale): add Norwegian (nb_NO) country definition by \u003ca href=\"https://github.com/TomSchrier\"\u003e\u003ccode\u003e@​TomSchrier\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3714\"\u003efaker-js/faker#3714\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(docs): share refreshable code logic by \u003ca href=\"https://github.com/ST-DDT\"\u003e\u003ccode\u003e@​ST-DDT\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3739\"\u003efaker-js/faker#3739\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese cat breed definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3716\"\u003efaker-js/faker#3716\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(food): add plant-based dish variety by \u003ca href=\"https://github.com/stuckvgn\"\u003e\u003ccode\u003e@​stuckvgn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3745\"\u003efaker-js/faker#3745\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(locales): correct typos and capitalization in es_MX street names by \u003ca href=\"https://github.com/quserforgitp\"\u003e\u003ccode\u003e@​quserforgitp\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3737\"\u003efaker-js/faker#3737\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese bear definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3720\"\u003efaker-js/faker#3720\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: fi locale phone numbers by \u003ca href=\"https://github.com/andeke07\"\u003e\u003ccode\u003e@​andeke07\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3747\"\u003efaker-js/faker#3747\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(hacker): use helpers.fake() instead of helpers.mustache() in phrase() by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3736\"\u003efaker-js/faker#3736\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update all non-major dependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3752\"\u003efaker-js/faker#3752\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​vitest/eslint-plugin\u003c/code\u003e to v1.6.9 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3749\"\u003efaker-js/faker#3749\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update eslint by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3751\"\u003efaker-js/faker#3751\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese cattle breed definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3717\"\u003efaker-js/faker#3717\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese bird definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3719\"\u003efaker-js/faker#3719\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese fish definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3721\"\u003efaker-js/faker#3721\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): lock file maintenance by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3738\"\u003efaker-js/faker#3738\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update devdependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3750\"\u003efaker-js/faker#3750\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update all non-major dependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3754\"\u003efaker-js/faker#3754\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(locale): filter and cleanup PersonEntryDefintions data by \u003ca href=\"https://github.com/ST-DDT\"\u003e\u003ccode\u003e@​ST-DDT\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3266\"\u003efaker-js/faker#3266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese horse breed definitions by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3718\"\u003efaker-js/faker#3718\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: migrate vitepress from v1 to v2.0.0-alpha.17 by \u003ca href=\"https://github.com/Shinigami92\"\u003e\u003ccode\u003e@​Shinigami92\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3757\"\u003efaker-js/faker#3757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update devdependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3755\"\u003efaker-js/faker#3755\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): lock file maintenance by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3756\"\u003efaker-js/faker#3756\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update mcr.microsoft.com/devcontainers/typescript-node:24 docker digest to 3ff0e3f by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3762\"\u003efaker-js/faker#3762\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update eslint by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3763\"\u003efaker-js/faker#3763\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update devdependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3764\"\u003efaker-js/faker#3764\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update vitest by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3765\"\u003efaker-js/faker#3765\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update pnpm/action-setup action to v5 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3766\"\u003efaker-js/faker#3766\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update all non-major dependencies by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3767\"\u003efaker-js/faker#3767\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): lock file maintenance by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3758\"\u003efaker-js/faker#3758\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(release): 10.4.0 by \u003ca href=\"https://github.com/fakerjs-bot\"\u003e\u003ccode\u003e@​fakerjs-bot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3768\"\u003efaker-js/faker#3768\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/stuckvgn\"\u003e\u003ccode\u003e@​stuckvgn\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3745\"\u003efaker-js/faker#3745\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/quserforgitp\"\u003e\u003ccode\u003e@​quserforgitp\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3737\"\u003efaker-js/faker#3737\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/andeke07\"\u003e\u003ccode\u003e@​andeke07\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3747\"\u003efaker-js/faker#3747\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/faker-js/faker/compare/v10.3.0...v10.4.0\"\u003ehttps://github.com/faker-js/faker/compare/v10.3.0...v10.4.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev10.3.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): lock file maintenance by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3689\"\u003efaker-js/faker#3689\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(location): state name to 'Trøndelag' for nb_NO by \u003ca href=\"https://github.com/Nilhenrik\"\u003e\u003ccode\u003e@​Nilhenrik\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3691\"\u003efaker-js/faker#3691\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(locale): remove empty string from Hebrew lorem words by \u003ca href=\"https://github.com/erezcor\"\u003e\u003ccode\u003e@​erezcor\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3698\"\u003efaker-js/faker#3698\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest: add custom matcher \u0026quot;toStartWith\u0026quot; by \u003ca href=\"https://github.com/xDivisionByZerox\"\u003e\u003ccode\u003e@​xDivisionByZerox\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3700\"\u003efaker-js/faker#3700\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(person): \u003ccode\u003esexType\u003c/code\u003e can return \u003ccode\u003e'generic'\u003c/code\u003e by \u003ca href=\"https://github.com/ST-DDT\"\u003e\u003ccode\u003e@​ST-DDT\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3259\"\u003efaker-js/faker#3259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor(locale): normalize system locale data by \u003ca href=\"https://github.com/xDivisionByZerox\"\u003e\u003ccode\u003e@​xDivisionByZerox\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3702\"\u003efaker-js/faker#3702\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese suffix definitions for person module by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3704\"\u003efaker-js/faker#3704\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(locale): add Japanese job definitions for person module by \u003ca href=\"https://github.com/atzzCokeK\"\u003e\u003ccode\u003e@​atzzCokeK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/faker-js/faker/pull/3705\"\u003efaker-js/faker#3705\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/faker-js/faker/blob/next/CHANGELOG.md\"\u003e@​faker-js/faker's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/faker-js/faker/compare/v10.3.0...v10.4.0\"\u003e10.4.0\u003c/a\u003e (2026-03-23)\u003c/h2\u003e\n\u003ch3\u003eNew Locales\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese bear definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3720\"\u003e#3720\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/2a4b15cff44cec578b23b579d9bd8603887024ac\"\u003e2a4b15c\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese bird definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3719\"\u003e#3719\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/dc31ff8f79c9811ed23ebea845ece4abd375aeaa\"\u003edc31ff8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese cat breed definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3716\"\u003e#3716\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/54af8a8ca051631350a727a2dc596e212b91061a\"\u003e54af8a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese cattle breed definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3717\"\u003e#3717\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/c2c7342d8d0bd93871659fa9150ce6f80364cf93\"\u003ec2c7342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese fish definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3721\"\u003e#3721\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/15fc36187225cff20037658dd9f9b6e076641ca9\"\u003e15fc361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese horse breed definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3718\"\u003e#3718\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/e02536ee5283e29961965dc3e4e56c74dc65c16f\"\u003ee02536e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Norwegian (nb_NO) country definition (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3714\"\u003e#3714\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/614b4e9eb7f86334619822d654063abc7026ee48\"\u003e614b4e9\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efi locale phone numbers (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3747\"\u003e#3747\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/7afa8b5628e51a8eba5e56d63d0ffc0ff2cea11f\"\u003e7afa8b5\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003efood:\u003c/strong\u003e add plant-based dish variety (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3745\"\u003e#3745\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/41edf49c9eb32db4a70a57a3e0ab687b9ec4b6a5\"\u003e41edf49\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged Locales\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e filter and cleanup PersonEntryDefintions data (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3266\"\u003e#3266\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/67defc8b0b3d4006f2151889d4401a3f2aa00580\"\u003e67defc8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003elocales:\u003c/strong\u003e correct typos and capitalization in es_MX street names (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3737\"\u003e#3737\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/2b32c28b438307904a12e1271fbc4f2e614091b6\"\u003e2b32c28\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/faker-js/faker/compare/v10.2.0...v10.3.0\"\u003e10.3.0\u003c/a\u003e (2026-02-06)\u003c/h2\u003e\n\u003ch3\u003eNew Locales\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese  dog definition (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3715\"\u003e#3715\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/76c9df131a55f63da55101cc7cccff2f7928187c\"\u003e76c9df1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese color definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3707\"\u003e#3707\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/bbbb215ef6441ec7a3ebdd660fd2690074f69c67\"\u003ebbbb215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese food module (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3706\"\u003e#3706\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/71d55c09f15ab437444c57d0eebff4477f75b131\"\u003e71d55c0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese internet definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3708\"\u003e#3708\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/184a709825979c6d8d7c3ea240ac2485bed96296\"\u003e184a709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese job definitions for person module (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3705\"\u003e#3705\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/e7f3ccd2e5b0ba84455edb680dfcfa5d86ecdbaf\"\u003ee7f3ccd\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Japanese suffix definitions for person module (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3704\"\u003e#3704\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/45ad7d81682f65ab7fe37eea0633d7f0262cde87\"\u003e45ad7d8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Norwegian (nb_NO) continent definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3712\"\u003e#3712\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/c0f0f232adad715791cde3622939b463d925c165\"\u003ec0f0f23\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Norwegian (nb_NO) direction definition (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3713\"\u003e#3713\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/43b18fa0c540fdc2a3a61517377da63653802d25\"\u003e43b18fa\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Norwegian (nb_NO) sex definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3710\"\u003e#3710\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/76063f26574b48f7ea8fd918f18744f3276669ad\"\u003e76063f2\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003elocale:\u003c/strong\u003e add Norwegian (nb_NO) vehicle definition (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3732\"\u003e#3732\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/d1c32b0326298534f40986328296232af209eb19\"\u003ed1c32b0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003elocales:\u003c/strong\u003e add Norwegian (nb_NO) zodiac sign definitions (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3711\"\u003e#3711\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/e306542867a4839fbe7eb8015c73db2f24bc6ceb\"\u003ee306542\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eperson:\u003c/strong\u003e \u003ccode\u003esexType\u003c/code\u003e can return \u003ccode\u003e'generic'\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3259\"\u003e#3259\u003c/a\u003e) (\u003ca href=\"https://github.com/faker-js/faker/commit/0e099a1033ae89de2f9810558c3c0257d78a50fe\"\u003e0e099a1\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/faker-js/faker/commit/b8abfc6415fe5be3a207b1b3dd4266905b924f84\"\u003e\u003ccode\u003eb8abfc6\u003c/code\u003e\u003c/a\u003e chore(release): 10.4.0 (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3768\"\u003e#3768\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/7108155ee3eb0da742e7ef26bb3795b5b9331d9e\"\u003e\u003ccode\u003e7108155\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3758\"\u003e#3758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/5e6cf2b74dee98556df6f95a45e1603a80db731d\"\u003e\u003ccode\u003e5e6cf2b\u003c/code\u003e\u003c/a\u003e chore(deps): update all non-major dependencies (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3767\"\u003e#3767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/91c944b7e8918af8f91c03e14f036063804b3e16\"\u003e\u003ccode\u003e91c944b\u003c/code\u003e\u003c/a\u003e chore(deps): update pnpm/action-setup action to v5 (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3766\"\u003e#3766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/cb18595f83328f01a121928ab33135829e10c2f1\"\u003e\u003ccode\u003ecb18595\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3765\"\u003e#3765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/af25d6b0dbbf85c91dfc5f56f163fef3514035d1\"\u003e\u003ccode\u003eaf25d6b\u003c/code\u003e\u003c/a\u003e chore(deps): update devdependencies (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3764\"\u003e#3764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/2e72c27e2aff7b45f469b446203afaa47089f4f9\"\u003e\u003ccode\u003e2e72c27\u003c/code\u003e\u003c/a\u003e chore(deps): update eslint (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3763\"\u003e#3763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/9a18091c23ca7236e9481dccaab60d80b1495f5f\"\u003e\u003ccode\u003e9a18091\u003c/code\u003e\u003c/a\u003e chore(deps): update mcr.microsoft.com/devcontainers/typescript-node:24 docker...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/aa7b6c017411d49df8afe2b6c4921978b7281b08\"\u003e\u003ccode\u003eaa7b6c0\u003c/code\u003e\u003c/a\u003e chore(deps): lock file maintenance (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3756\"\u003e#3756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/faker-js/faker/commit/89ba3459444ae5be0fe9c5f349ced863c4f95f7b\"\u003e\u003ccode\u003e89ba345\u003c/code\u003e\u003c/a\u003e chore(deps): update devdependencies (\u003ca href=\"https://redirect.github.com/faker-js/faker/issues/3755\"\u003e#3755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/faker-js/faker/compare/v7.6.0...v10.4.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 \u003ccode\u003e@​faker-js/faker\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.58.2 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lodash` from 4.17.21 to 4.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lodash/lodash/releases\"\u003elodash's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.18.1\u003c/h2\u003e\n\u003ch2\u003eBugs\u003c/h2\u003e\n\u003cp\u003eFixes a \u003ccode\u003eReferenceError\u003c/code\u003e issue in \u003ccode\u003elodash\u003c/code\u003e \u003ccode\u003elodash-es\u003c/code\u003e \u003ccode\u003elodash-amd\u003c/code\u003e and \u003ccode\u003elodash.template\u003c/code\u003e when using the \u003ccode\u003etemplate\u003c/code\u003e and \u003ccode\u003efromPairs\u003c/code\u003e functions from the modular builds. See \u003ca href=\"https://redirect.github.com/lodash/lodash/issues/6167#issuecomment-4165269769\"\u003elodash/lodash#6167\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThese defects were related to how lodash distributions are built from the main branch using \u003ca href=\"https://github.com/lodash-archive/lodash-cli\"\u003ehttps://github.com/lodash-archive/lodash-cli\u003c/a\u003e. When internal dependencies change inside lodash functions, equivalent updates need to be made to a mapping in the lodash-cli. (hey, it was ahead of its time once upon a time!). We know this, but we missed it in the last release. It's the kind of thing that passes in CI, but fails bc the build is not the same thing you tested.\u003c/p\u003e\n\u003cp\u003eThere is no diff on main for this, but you can see the diffs for each of the npm packages on their respective branches:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elodash\u003c/code\u003e: \u003ca href=\"https://github.com/lodash/lodash/compare/4.18.0-npm...4.18.1-npm\"\u003ehttps://github.com/lodash/lodash/compare/4.18.0-npm...4.18.1-npm\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elodash-es\u003c/code\u003e: \u003ca href=\"https://github.com/lodash/lodash/compare/4.18.0-es...4.18.1-es\"\u003ehttps://github.com/lodash/lodash/compare/4.18.0-es...4.18.1-es\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elodash-amd\u003c/code\u003e: \u003ca href=\"https://github.com/lodash/lodash/compare/4.18.0-amd...4.18.1-amd\"\u003ehttps://github.com/lodash/lodash/compare/4.18.0-amd...4.18.1-amd\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elodash.template\u003c/code\u003e\u003ca href=\"https://github.com/lodash/lodash/compare/4.18.0-npm-packages...4.18.1-npm-packages\"\u003ehttps://github.com/lodash/lodash/compare/4.18.0-npm-packages...4.18.1-npm-packages\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.18.0\u003c/h2\u003e\n\u003ch2\u003ev4.18.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lodash/lodash/compare/4.17.23...4.18.0\"\u003ehttps://github.com/lodash/lodash/compare/4.17.23...4.18.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cp\u003e\u003cstrong\u003e\u003ccode\u003e_.unset\u003c/code\u003e / \u003ccode\u003e_.omit\u003c/code\u003e\u003c/strong\u003e: Fixed prototype pollution via \u003ccode\u003econstructor\u003c/code\u003e/\u003ccode\u003eprototype\u003c/code\u003e path traversal (\u003ca href=\"https://github.com/lodash/lodash/security/advisories/GHSA-f23m-r3pf-42rh\"\u003eGHSA-f23m-r3pf-42rh\u003c/a\u003e, \u003ca href=\"https://github.com/lodash/lodash/commit/fe8d32eda854377349a4f922ab7655c8e5df9a0b\"\u003efe8d32e\u003c/a\u003e). Previously, array-wrapped path segments and primitive roots could bypass the existing guards, allowing deletion of properties from built-in prototypes. Now \u003ccode\u003econstructor\u003c/code\u003e and \u003ccode\u003eprototype\u003c/code\u003e are blocked unconditionally as non-terminal path keys, matching \u003ccode\u003ebaseSet\u003c/code\u003e. Calls that previously returned \u003ccode\u003etrue\u003c/code\u003e and deleted the property now return \u003ccode\u003efalse\u003c/code\u003e and leave the target untouched.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e\u003ccode\u003e_.template\u003c/code\u003e\u003c/strong\u003e: Fixed code injection via \u003ccode\u003eimports\u003c/code\u003e keys (\u003ca href=\"https://github.com/lodash/lodash/security/advisories/GHSA-r5fr-rjxr-66jc\"\u003eGHSA-r5fr-rjxr-66jc\u003c/a\u003e, CVE-2026-4800, \u003ca href=\"https://github.com/lodash/lodash/commit/879aaa93132d78c2f8d20c60279da9f8b21576d6\"\u003e879aaa9\u003c/a\u003e). Fixes an incomplete patch for CVE-2021-23337. The \u003ccode\u003evariable\u003c/code\u003e option was validated against \u003ccode\u003ereForbiddenIdentifierChars\u003c/code\u003e but \u003ccode\u003eimportsKeys\u003c/code\u003e was left unguarded, allowing code injection via the same \u003ccode\u003eFunction()\u003c/code\u003e constructor sink. \u003ccode\u003eimports\u003c/code\u003e keys containing forbidden identifier characters now throw \u003ccode\u003e\u0026quot;Invalid imports option passed into _.template\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd security notice for \u003ccode\u003e_.template\u003c/code\u003e in threat model and API docs (\u003ca href=\"https://redirect.github.com/lodash/lodash/pull/6099\"\u003e#6099\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocument \u003ccode\u003elower \u0026gt; upper\u003c/code\u003e behavior in \u003ccode\u003e_.random\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/lodash/lodash/pull/6115\"\u003e#6115\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix quotes in \u003ccode\u003e_.compact\u003c/code\u003e jsdoc (\u003ca href=\"https://redirect.github.com/lodash/lodash/pull/6090\"\u003e#6090\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003elodash.*\u003c/code\u003e modular packages\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/lodash/lodash/pull/6157\"\u003eDiff\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe have also regenerated and published a select number of the \u003ccode\u003elodash.*\u003c/code\u003e modular packages.\u003c/p\u003e\n\u003cp\u003eThese modular packages had fallen out of sync significantly from the minor/patch updates to lodash. Specifically, we have brought the following packages up to parity w/ the latest lodash release because they have had CVEs on them in the past:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.orderby\"\u003elodash.orderby\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.tonumber\"\u003elodash.tonumber\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.trim\"\u003elodash.trim\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.trimend\"\u003elodash.trimend\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.sortedindexby\"\u003elodash.sortedindexby\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.zipobjectdeep\"\u003elodash.zipobjectdeep\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.unset\"\u003elodash.unset\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.omit\"\u003elodash.omit\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.npmjs.com/package/lodash.template\"\u003elodash.template\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/lodash/lodash/commit/cb0b9b9212521c08e3eafe7c8cb0af1b42b6649e\"\u003e\u003ccode\u003ecb0b9b9\u003c/code\u003e\u003c/a\u003e release(patch): bump main to 4.18.1 (\u003ca href=\"https://redirect.github.com/lodash/lodash/issues/6177\"\u003e#6177\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/75535f57883b7225adb96de1cfc1cd4169cfcb51\"\u003e\u003ccode\u003e75535f5\u003c/code\u003e\u003c/a\u003e chore: prune stale advisory refs (\u003ca href=\"https://redirect.github.com/lodash/lodash/issues/6170\"\u003e#6170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/62e91bc6a39c98d85b9ada8c44d40593deaf82a4\"\u003e\u003ccode\u003e62e91bc\u003c/code\u003e\u003c/a\u003e docs: remove n_ Node.js \u0026lt; 6 REPL note from README (\u003ca href=\"https://redirect.github.com/lodash/lodash/issues/6165\"\u003e#6165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/59be2de61f8aa9461c7856533b51d31b7d8babc4\"\u003e\u003ccode\u003e59be2de\u003c/code\u003e\u003c/a\u003e release(minor): bump to 4.18.0 (\u003ca href=\"https://redirect.github.com/lodash/lodash/issues/6161\"\u003e#6161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/af634573030f979194871da7c68f79420992f53d\"\u003e\u003ccode\u003eaf63457\u003c/code\u003e\u003c/a\u003e fix: broken tests for _.template 879aaa9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/1073a7693e1727e0cf3641e5f71f75ddcf8de7c0\"\u003e\u003ccode\u003e1073a76\u003c/code\u003e\u003c/a\u003e fix: linting issues\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lodash/lodash/commit/879...\n\n_Description has been truncated_","html_url":"https://github.com/petyosi/react-virtuoso/pull/1421","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/petyosi%2Freact-virtuoso/issues/1421","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1421/packages"}},{"old_version":"1.58.2","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-30T17:22:42.000Z","version_change":"1.58.2 → 1.60.0","issue":{"uuid":"4555126908","node_id":"PR_kwDOSsaSU87g-e17","number":9,"state":"open","title":"npm(deps-dev): bump the development-dependencies group with 10 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T17:22:42.000Z","updated_at":"2026-05-30T17:29:20.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"npm(deps-dev): bump","group_name":"development-dependencies","update_count":10,"packages":[{"name":"@axe-core/react","old_version":"4.11.1","new_version":"4.11.3","repository_url":"https://github.com/dequelabs/axe-core-npm"},{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tailwindcss/postcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@types/react","old_version":"19.2.14","new_version":"19.2.15","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"eslint-config-next","old_version":"16.1.6","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"eslint-plugin-prettier","old_version":"5.5.5","new_version":"5.5.6","repository_url":"https://github.com/prettier/eslint-plugin-prettier"},{"name":"jest","old_version":"30.3.0","new_version":"30.4.2","repository_url":"https://github.com/jestjs/jest"},{"name":"jest-environment-jsdom","old_version":"30.3.0","new_version":"30.4.1","repository_url":"https://github.com/jestjs/jest"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"tailwindcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development-dependencies group with 10 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@axe-core/react](https://github.com/dequelabs/axe-core-npm) | `4.11.1` | `4.11.3` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.1` | `4.3.0` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.1.6` | `16.2.6` |\n| [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) | `5.5.5` | `5.5.6` |\n| [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) | `30.3.0` | `30.4.2` |\n| [jest-environment-jsdom](https://github.com/jestjs/jest/tree/HEAD/packages/jest-environment-jsdom) | `30.3.0` | `30.4.1` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.1` | `4.3.0` |\n\nUpdates `@axe-core/react` from 4.11.1 to 4.11.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dequelabs/axe-core-npm/releases\"\u003e@​axe-core/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.11.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: add create-release workflow by \u003ca href=\"https://github.com/Garbee\"\u003e\u003ccode\u003e@​Garbee\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1326\"\u003edequelabs/axe-core-npm#1326\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: merge master into develop by \u003ca href=\"https://github.com/attest-team-ci\"\u003e\u003ccode\u003e@​attest-team-ci\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1324\"\u003edequelabs/axe-core-npm#1324\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Update axe-core to v4.11.4 by \u003ca href=\"https://github.com/attest-team-ci\"\u003e\u003ccode\u003e@​attest-team-ci\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1330\"\u003edequelabs/axe-core-npm#1330\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: RC v4.11.3 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1332\"\u003edequelabs/axe-core-npm#1332\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: release v4.11.3 by \u003ca href=\"https://github.com/axe-core\"\u003e\u003ccode\u003e@​axe-core\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1335\"\u003edequelabs/axe-core-npm#1335\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/axe-core\"\u003e\u003ccode\u003e@​axe-core\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/pull/1335\"\u003edequelabs/axe-core-npm#1335\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dequelabs/axe-core-npm/compare/v4.11.2...v4.11.3\"\u003ehttps://github.com/dequelabs/axe-core-npm/compare/v4.11.2...v4.11.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 4.11.2\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate axe-core to v4.11.3 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1306\"\u003e#1306\u003c/a\u003e) (\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/71c41796f4cdf2aebcb5e49d1bf6896f4ad72a2a\"\u003e71c4179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ewdio:\u003c/strong\u003e support v9 wdio switchFrame and switchWindow (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1302\"\u003e#1302\u003c/a\u003e) (\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/4689273aead05133e161fe1d419a60224763ed7c\"\u003e4689273\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1164\"\u003e#1164\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/dequelabs/axe-core-npm/blob/develop/CHANGELOG.md\"\u003e@​axe-core/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChange Log\u003c/h1\u003e\n\u003cp\u003eAll notable changes to this project will be documented in this file.\nSee \u003ca href=\"https://conventionalcommits.org\"\u003eConventional Commits\u003c/a\u003e for commit guidelines.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/compare/v4.11.1...v4.11.2\"\u003e4.11.2\u003c/a\u003e (2026-04-14)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate axe-core to v4.11.3 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1306\"\u003e#1306\u003c/a\u003e) (\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/71c41796f4cdf2aebcb5e49d1bf6896f4ad72a2a\"\u003e71c4179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ewdio:\u003c/strong\u003e support v9 wdio switchFrame and switchWindow (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1302\"\u003e#1302\u003c/a\u003e) (\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/4689273aead05133e161fe1d419a60224763ed7c\"\u003e4689273\u003c/a\u003e), closes \u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1164\"\u003e#1164\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/dequelabs/axe-core-npm/commit/25fbfd2a7b4d38fcdca487d393192e811592f1ec\"\u003e\u003ccode\u003e25fbfd2\u003c/code\u003e\u003c/a\u003e chore: release v4.11.3 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1335\"\u003e#1335\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/dad3572195f68304561b28fc12980d24d069e0d3\"\u003e\u003ccode\u003edad3572\u003c/code\u003e\u003c/a\u003e chore: RC v4.11.3 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1332\"\u003e#1332\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/582a7fc2e16e7f5a5aa3d0cd28b31882b4504996\"\u003e\u003ccode\u003e582a7fc\u003c/code\u003e\u003c/a\u003e chore: RC v4.11.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/eed87f56b9808b3def657741c9c5023d7338583c\"\u003e\u003ccode\u003eeed87f5\u003c/code\u003e\u003c/a\u003e fix: Update axe-core to v4.11.4 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/57c54378dc0d829ea90562c1f192757df03839d3\"\u003e\u003ccode\u003e57c5437\u003c/code\u003e\u003c/a\u003e chore: merge master into develop (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1324\"\u003e#1324\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/da56b5d6a0690a680e21b7f698a3ad9ed7497a10\"\u003e\u003ccode\u003eda56b5d\u003c/code\u003e\u003c/a\u003e chore: add create-release workflow (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1326\"\u003e#1326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/310de0a8b094d9575502a92ce898b7811e4f3a00\"\u003e\u003ccode\u003e310de0a\u003c/code\u003e\u003c/a\u003e chore: Release 4.11.2 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1323\"\u003e#1323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/39d99670b124852b51390221f1b4c43ea7ec1495\"\u003e\u003ccode\u003e39d9967\u003c/code\u003e\u003c/a\u003e chore: RC v4.11.2 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1317\"\u003e#1317\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/7eb0bf2ce0c11bd12acb98111d72af7641ecdc33\"\u003e\u003ccode\u003e7eb0bf2\u003c/code\u003e\u003c/a\u003e chore: RC v4.11.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dequelabs/axe-core-npm/commit/71c41796f4cdf2aebcb5e49d1bf6896f4ad72a2a\"\u003e\u003ccode\u003e71c4179\u003c/code\u003e\u003c/a\u003e fix: Update axe-core to v4.11.3 (\u003ca href=\"https://redirect.github.com/dequelabs/axe-core-npm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dequelabs/axe-core-npm/compare/v4.11.1...v4.11.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.58.2 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/postcss` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/postcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/postcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/12eb5ae7b6026ff64c04f889b2221418d772da72\"\u003e\u003ccode\u003e12eb5ae\u003c/code\u003e\u003c/a\u003e Cleanup noisy test output (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4255671c5f792c42808ecd6b2dec27c16e3c559e\"\u003e\u003ccode\u003e4255671\u003c/code\u003e\u003c/a\u003e Improve snapshot tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52f94c74bb491e9c3641ce322a0ef90fb3c45de6\"\u003e\u003ccode\u003e52f94c7\u003c/code\u003e\u003c/a\u003e Improve codebase quality (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19999\"\u003e#19999\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/bfb5732b0b948d89c6803cb537bca168ec8e0a46\"\u003e\u003ccode\u003ebfb5732\u003c/code\u003e\u003c/a\u003e Fall back to the plugin \u003ccode\u003ebase\u003c/code\u003e when PostCSS has no \u003ccode\u003efrom\u003c/code\u003e option (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/3a890c35727fe0630c59b72dbec799d02e3c4800\"\u003e\u003ccode\u003e3a890c3\u003c/code\u003e\u003c/a\u003e Bump dependencies (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-postcss\"\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 \u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e since your current version.\u003c/p\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 `eslint-config-next` from 16.1.6 to 16.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/next.js/releases\"\u003eeslint-config-next's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.2.6\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release contains security fixes and backported bug fixes. It does \u003cstrong\u003enot\u003c/strong\u003e include all pending features/changes on canary.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eSecurity Fixes\u003c/h3\u003e\n\u003cp\u003eThe following advisories have been addressed:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eHigh:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-8h8q-6873-q5fj\"\u003eGHSA-8h8q-6873-q5fj: Denial of Service with Server Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-267c-6grr-h53f\"\u003eGHSA-267c-6grr-h53f: Middleware / Proxy bypass in App Router applications via segment-prefetch routes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-26hh-7cqf-hhc6\"\u003eGHSA-26hh-7cqf-hhc6: Middleware / Proxy bypass in App Router applications via segment-prefetch routes - \u003cstrong\u003eIncomplete Fix Follow-Up\u003c/strong\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-mg66-mrh9-m8jx\"\u003eGHSA-mg66-mrh9-m8jx: Denial of Service via connection exhaustion in applications using Cache Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-492v-c6pp-mqqv\"\u003eGHSA-492v-c6pp-mqqv: Middleware / Proxy bypass through dynamic route parameter injection\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-c4j6-fc7j-m34r\"\u003eGHSA-c4j6-fc7j-m34r: Server-side request forgery in applications using WebSocket upgrades\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-36qx-fr4f-26g5\"\u003eGHSA-36qx-fr4f-26g5: Middleware / Proxy bypass in Pages Router applications using i18n\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eModerate:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-ffhc-5mcf-pf4q\"\u003eGHSA-ffhc-5mcf-pf4q: Cross-site scripting in App Router applications using CSP nonces\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-gx5p-jg67-6x7h\"\u003eGHSA-gx5p-jg67-6x7h: Cross-site scripting in beforeInteractive scripts with untrusted input\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-h64f-5h5j-jqjh\"\u003eGHSA-h64f-5h5j-jqjh: Denial of Service in the Image Optimization API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-wfc6-r584-vfw7\"\u003eGHSA-wfc6-r584-vfw7: Cache poisoning in React Server Component responses\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eLow:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-vfv6-92ff-j949\"\u003eGHSA-vfv6-92ff-j949: Cache poisoning via collisions in React Server Component cache-busting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-3g8h-86w9-wvmq\"\u003eGHSA-3g8h-86w9-wvmq: Middleware / Proxy redirects can be cache-poisoned\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: preserve HTTP access fallbacks during prerender recovery (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/92231\"\u003e#92231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix fallback route params case in app-page handler (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/91737\"\u003e#91737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix invalid HTML response for route-level RSC requests in deployment adapter (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/91541\"\u003e#91541\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePatch setHeader for direct route handlers (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93101\"\u003e#93101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude deployment id in \u003ccode\u003ecacheHandlers\u003c/code\u003e keys (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93453\"\u003e#93453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix double-encoding of URL pathname parts in client param parsing (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93491\"\u003e#93491\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev16.2.5\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release contains security fixes and backported bug fixes. It does \u003cstrong\u003enot\u003c/strong\u003e include all pending features/changes on canary.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eSecurity Fixes\u003c/h3\u003e\n\u003cp\u003eThe following advisories have been addressed:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eHigh:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-8h8q-6873-q5fj\"\u003eGHSA-8h8q-6873-q5fj: Denial of Service with Server Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-267c-6grr-h53f\"\u003eGHSA-267c-6grr-h53f: Middleware / Proxy bypass in App Router applications via segment-prefetch routes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-mg66-mrh9-m8jx\"\u003eGHSA-mg66-mrh9-m8jx: Denial of Service via connection exhaustion in applications using Cache Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-492v-c6pp-mqqv\"\u003eGHSA-492v-c6pp-mqqv: Middleware / Proxy bypass through dynamic route parameter injection\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-c4j6-fc7j-m34r\"\u003eGHSA-c4j6-fc7j-m34r: Server-side request forgery in applications using WebSocket upgrades\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/vercel/next.js/commit/ee6e79b1792a4d401ddf2480f40a83549fe8e722\"\u003e\u003ccode\u003eee6e79b\u003c/code\u003e\u003c/a\u003e v16.2.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/766148f9cd48c0e218acafcd0f15defc14871bf4\"\u003e\u003ccode\u003e766148f\u003c/code\u003e\u003c/a\u003e v16.2.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/2275bd8598c88e8652d1271e74bcf972f72f4f38\"\u003e\u003ccode\u003e2275bd8\u003c/code\u003e\u003c/a\u003e v16.2.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/d5f649b2f4affdad1009cb178c1e3b37f4f1ad3f\"\u003e\u003ccode\u003ed5f649b\u003c/code\u003e\u003c/a\u003e v16.2.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/52faae3d94641584e13691238df5be158d0f00fb\"\u003e\u003ccode\u003e52faae3\u003c/code\u003e\u003c/a\u003e v16.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/ed7d2cef246dcb3e2955c018fd8b2027e0ff8eed\"\u003e\u003ccode\u003eed7d2ce\u003c/code\u003e\u003c/a\u003e v16.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/c5c94dffbf084e66b172a9c6ff23d80c24973764\"\u003e\u003ccode\u003ec5c94df\u003c/code\u003e\u003c/a\u003e v16.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/3683192a6bea9011222e9b236f8000b5266f3fe6\"\u003e\u003ccode\u003e3683192\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.104\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/668981482a3f9de97c4c1371e940e0f84972c080\"\u003e\u003ccode\u003e6689814\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.103\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/ad66dbc89b356867c308110dc5365a696c763991\"\u003e\u003ccode\u003ead66dbc\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.102\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/next.js/commits/v16.2.6/packages/eslint-config-next\"\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-config-next since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-plugin-prettier` from 5.5.5 to 5.5.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/releases\"\u003eeslint-plugin-prettier's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.5.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/791\"\u003e#791\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/b5c96a30d3e292a379d6e8ac030c29fd7acbc90b\"\u003e\u003ccode\u003eb5c96a3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e! - chore: bump all (dev)Dependencies\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/prettier/eslint-plugin-prettier/blob/main/CHANGELOG.md\"\u003eeslint-plugin-prettier's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.5.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/pull/791\"\u003e#791\u003c/a\u003e \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/b5c96a30d3e292a379d6e8ac030c29fd7acbc90b\"\u003e\u003ccode\u003eb5c96a3\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/JounQin\"\u003e\u003ccode\u003e@​JounQin\u003c/code\u003e\u003c/a\u003e! - chore: bump all (dev)Dependencies\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/prettier/eslint-plugin-prettier/commit/4f33ea5a503c6cdbda93424ebd13188a46a1a890\"\u003e\u003ccode\u003e4f33ea5\u003c/code\u003e\u003c/a\u003e chore: release eslint-plugin-prettier (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/792\"\u003e#792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/4745b54882a9011704764070a28aaaf0504efc92\"\u003e\u003ccode\u003e4745b54\u003c/code\u003e\u003c/a\u003e ci: declare workflow-level contents: read on 2 workflows (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/790\"\u003e#790\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/b5c96a30d3e292a379d6e8ac030c29fd7acbc90b\"\u003e\u003ccode\u003eb5c96a3\u003c/code\u003e\u003c/a\u003e chore: bump all (dev)Dependencies (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/791\"\u003e#791\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/e867680b2c1cf3748322c8c802690e7cfb78e233\"\u003e\u003ccode\u003ee867680\u003c/code\u003e\u003c/a\u003e chore(deps): update all dependencies (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/766\"\u003e#766\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/e8e2f7f1dcad747f1d43168ee09956b512956593\"\u003e\u003ccode\u003ee8e2f7f\u003c/code\u003e\u003c/a\u003e chore: testing eslint v10 (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/779\"\u003e#779\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/ca076d95aaf69aaf9c95abcc1692f8269197f248\"\u003e\u003ccode\u003eca076d9\u003c/code\u003e\u003c/a\u003e chore: update dev dependencies (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/780\"\u003e#780\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/42e636951f8d53d169b1f8c2b7e7dfd792711113\"\u003e\u003ccode\u003e42e6369\u003c/code\u003e\u003c/a\u003e build(deps): Bump the actions group with 2 updates (\u003ca href=\"https://redirect.github.com/prettier/eslint-plugin-prettier/issues/778\"\u003e#778\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/commit/53ff2143c03609e75b60e0e33d56c8089f0b364f\"\u003e\u003ccode\u003e53ff214\u003c/code\u003e\u003c/a\u003e Remove empty NPM_TOKEN from release.yml\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/prettier/eslint-plugin-prettier/compare/v5.5.5...v5.5.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jest` from 30.3.0 to 30.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jestjs/jest/releases\"\u003ejest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev30.4.2\u003c/h2\u003e\n\u003ch1\u003eFixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix named imports from CJS modules whose \u003ccode\u003emodule.exports\u003c/code\u003e is a function with own-property exports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16150\"\u003e#16150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.1...v30.4.2\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.1...v30.4.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.0\u003c/h2\u003e\n\u003cp\u003eBig release! 😀\u003c/p\u003e\n\u003cp\u003eMain feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work \u003ccode\u003erequire(esm)\u003c/code\u003e module is now supported on Node 24.9+ (still requires \u003ccode\u003e--experimental-vm-modules\u003c/code\u003e like before).\u003c/p\u003e\n\u003cp\u003eIn addition we now support fake timers for the recently released \u003ccode\u003eTemporal\u003c/code\u003e API in Node v26.\u003c/p\u003e\n\u003cp\u003eReact 19 is also supported properly in \u003ccode\u003epretty-format\u003c/code\u003e, meaning snapshots of React components now work like they should.\u003c/p\u003e\n\u003cp\u003eDue to all the changes, there might be regressions that snuck in. Please report them!\u003c/p\u003e\n\u003cp\u003eFull list of changes below\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\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/jestjs/jest/blob/main/CHANGELOG.md\"\u003ejest's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e30.4.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix named imports from CJS modules whose \u003ccode\u003emodule.exports\u003c/code\u003e is a function with own-property exports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16150\"\u003e#16150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.1\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus]\u003c/code\u003e Prevent crash when \u003ccode\u003easyncError\u003c/code\u003e is undefined for non-Error throws (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16003\"\u003e#16003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-jasmine2]\u003c/code\u003e Include \u003ccode\u003eError.cause\u003c/code\u003e in JSON \u003ccode\u003efailureMessages\u003c/code\u003e output (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15967\"\u003e#15967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Fix preset path resolution on Windows when the preset uses subpath \u003ccode\u003eexports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15961\"\u003e#15961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config without a validation warning (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Project config validator now emits \u0026quot;is not supported in an individual project configuration\u0026quot; instead of \u0026quot;probably a typing mistake\u0026quot; for known global-only options (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-environment-node]\u003c/code\u003e Fix \u003ccode\u003e--localstorage-file\u003c/code\u003e warning on Node 25+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16086\"\u003e#16086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters]\u003c/code\u003e Apply global coverage threshold to unmatched pattern files in addition to glob/path thresholds (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16137\"\u003e#16137\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/jestjs/jest/commit/746f2a0f57c56e3bba555280f0587d40f3db95c0\"\u003e\u003ccode\u003e746f2a0\u003c/code\u003e\u003c/a\u003e v30.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/b3b4a09ed3005369dacc7466d1d2122797283785\"\u003e\u003ccode\u003eb3b4a09\u003c/code\u003e\u003c/a\u003e v30.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/5cbb21e0b3037edb42e503ec1a1ce80efad40c20\"\u003e\u003ccode\u003e5cbb21e\u003c/code\u003e\u003c/a\u003e v30.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/db7141a93cc85fab81cf9c25368e1f2b2c312286\"\u003e\u003ccode\u003edb7141a\u003c/code\u003e\u003c/a\u003e fix: allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config (\u003ca href=\"https://github.com/jestjs/jest/tree/HEAD/packages/jest/issues/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jestjs/jest/commits/v30.4.2/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jest-environment-jsdom` from 30.3.0 to 30.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jestjs/jest/releases\"\u003ejest-environment-jsdom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev30.4.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.0\u003c/h2\u003e\n\u003cp\u003eBig release! 😀\u003c/p\u003e\n\u003cp\u003eMain feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work \u003ccode\u003erequire(esm)\u003c/code\u003e module is now supported on Node 24.9+ (still requires \u003ccode\u003e--experimental-vm-modules\u003c/code\u003e like before).\u003c/p\u003e\n\u003cp\u003eIn addition we now support fake timers for the recently released \u003ccode\u003eTemporal\u003c/code\u003e API in Node v26.\u003c/p\u003e\n\u003cp\u003eReact 19 is also supported properly in \u003ccode\u003epretty-format\u003c/code\u003e, meaning snapshots of React components now work like they should.\u003c/p\u003e\n\u003cp\u003eDue to all the changes, there might be regressions that snuck in. Please report them!\u003c/p\u003e\n\u003cp\u003eFull list of changes below\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\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/jestjs/jest/blob/main/CHANGELOG.md\"\u003ejest-environment-jsdom's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e30.4.1\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeo...\n\n_Description has been truncated_","html_url":"https://github.com/FreeForCharity/FFC-EX-hclwellness.org/pull/9","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/FreeForCharity%2FFFC-EX-hclwellness.org/issues/9","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/9/packages"}},{"old_version":"1.59.1","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-30T11:19:26.000Z","version_change":"1.59.1 → 1.60.0","issue":{"uuid":"4554220548","node_id":"PR_kwDOQxBvIc7g7ygQ","number":246,"state":"open","title":"chore(deps-dev): bump the npm-dev group with 13 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T11:19:26.000Z","updated_at":"2026-05-30T11:21:26.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"npm-dev","update_count":13,"packages":[{"name":"@typescript-eslint/eslint-plugin","old_version":"8.59.1","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.59.1","new_version":"8.60.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@vitest/coverage-v8","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"globals","old_version":"17.5.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"turbo","old_version":"2.9.6","new_version":"2.9.16","repository_url":"https://github.com/vercel/turborepo"},{"name":"jsdom","old_version":"29.1.0","new_version":"29.1.1","repository_url":"https://github.com/jsdom/jsdom"},{"name":"vitest","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@types/node","old_version":"25.6.0","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vitejs/plugin-react","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"vite","old_version":"8.0.10","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vite-plugin-dts","old_version":"5.0.0","new_version":"5.0.1","repository_url":"https://github.com/qmhc/unplugin-dts"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"vite-plugin-pwa","old_version":"1.2.0","new_version":"1.3.0","repository_url":"https://github.com/vite-pwa/vite-plugin-pwa"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm-dev group with 13 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.59.1` | `8.60.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.59.1` | `8.60.0` |\n| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.1.5` | `4.1.7` |\n| [globals](https://github.com/sindresorhus/globals) | `17.5.0` | `17.6.0` |\n| [turbo](https://github.com/vercel/turborepo) | `2.9.6` | `2.9.16` |\n| [jsdom](https://github.com/jsdom/jsdom) | `29.1.0` | `29.1.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.5` | `4.1.7` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.6.0` | `25.9.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `6.0.1` | `6.0.2` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.10` | `8.0.14` |\n| [vite-plugin-dts](https://github.com/qmhc/unplugin-dts/tree/HEAD/packages/vite-plugin-dts) | `5.0.0` | `5.0.1` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [vite-plugin-pwa](https://github.com/vite-pwa/vite-plugin-pwa) | `1.2.0` | `1.3.0` |\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.59.1 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\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/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.59.1 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\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/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\u003eSee full diff 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 `@vitest/coverage-v8` from 4.1.5 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\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 `globals` from 17.5.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\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\u003eSee full diff in \u003ca href=\"https://github.com/sindresorhus/globals/compare/v17.5.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 `turbo` from 2.9.6 to 2.9.16\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/turborepo/releases\"\u003eturbo's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTurborepo v2.9.16\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eChangelog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erelease(turborepo): 2.9.15 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12955\"\u003evercel/turborepo#12955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Avoid hanging PTY shutdown by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12958\"\u003evercel/turborepo#12958\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Retry npm tlog publish failures by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12959\"\u003evercel/turborepo#12959\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.16-canary.1 by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12960\"\u003evercel/turborepo#12960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Preserve nested Bun dependency versions by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12963\"\u003evercel/turborepo#12963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRevert \u0026quot;fix: Preserve nested Bun dependency versions\u0026quot; by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12964\"\u003evercel/turborepo#12964\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.16-canary.2 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12961\"\u003evercel/turborepo#12961\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Preserve nested Bun dependency versions by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12965\"\u003evercel/turborepo#12965\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Don't delete existing \u003ccode\u003e.git\u003c/code\u003e when using \u003ccode\u003e--no-git\u003c/code\u003e flag by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12968\"\u003evercel/turborepo#12968\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vercel/turborepo/compare/v2.9.15...v2.9.16\"\u003ehttps://github.com/vercel/turborepo/compare/v2.9.15...v2.9.16\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTurborepo v2.9.16-canary.2\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eChangelog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erelease(turborepo): 2.9.15-canary.7 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12935\"\u003evercel/turborepo#12935\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Restore a few internal invariant checks by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12933\"\u003evercel/turborepo#12933\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Improve profile tracing coverage by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12936\"\u003evercel/turborepo#12936\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Use build-scale OTel duration buckets by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12939\"\u003evercel/turborepo#12939\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Preserve pnpm injected peer package entries by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12940\"\u003evercel/turborepo#12940\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: Add heap allocation profiling by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12943\"\u003evercel/turborepo#12943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.15-canary.8 by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12945\"\u003evercel/turborepo#12945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Correct attribute presence claims in turborepo-otel by \u003ca href=\"https://github.com/adityasingh2400\"\u003e\u003ccode\u003e@​adityasingh2400\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12932\"\u003evercel/turborepo#12932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(turbo-codemod): Remove duplicate \u0026quot;in\u0026quot; in transforms path comment by \u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12948\"\u003evercel/turborepo#12948\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: Switch Geist font imports to npm geist package by \u003ca href=\"https://github.com/christopherkindl\"\u003e\u003ccode\u003e@​christopherkindl\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12952\"\u003evercel/turborepo#12952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Respect root gitignore during prune by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12953\"\u003evercel/turborepo#12953\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Harden OTEL endpoint validation by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12954\"\u003evercel/turborepo#12954\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.15 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12955\"\u003evercel/turborepo#12955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Avoid hanging PTY shutdown by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12958\"\u003evercel/turborepo#12958\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Retry npm tlog publish failures by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12959\"\u003evercel/turborepo#12959\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.16-canary.1 by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12960\"\u003evercel/turborepo#12960\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/adityasingh2400\"\u003e\u003ccode\u003e@​adityasingh2400\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12932\"\u003evercel/turborepo#12932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12948\"\u003evercel/turborepo#12948\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/christopherkindl\"\u003e\u003ccode\u003e@​christopherkindl\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12952\"\u003evercel/turborepo#12952\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vercel/turborepo/compare/v2.9.15-canary.7...v2.9.16-canary.2\"\u003ehttps://github.com/vercel/turborepo/compare/v2.9.15-canary.7...v2.9.16-canary.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTurborepo v2.9.15\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- 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/vercel/turborepo/commit/5e2d466c345604aa2011cd2314d176f401f650de\"\u003e\u003ccode\u003e5e2d466\u003c/code\u003e\u003c/a\u003e publish 2.9.16 to registry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/b4aa626ee2316a61d070bcce4038ff26474180ee\"\u003e\u003ccode\u003eb4aa626\u003c/code\u003e\u003c/a\u003e fix: Don't delete existing \u003ccode\u003e.git\u003c/code\u003e when using \u003ccode\u003e--no-git\u003c/code\u003e flag (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12968\"\u003e#12968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/7952b4627d04f1edd7ab9f2262a17c3e49cc1bc8\"\u003e\u003ccode\u003e7952b46\u003c/code\u003e\u003c/a\u003e fix: Preserve nested Bun dependency versions (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12965\"\u003e#12965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/5e5b248c188e679616c0d9e23bbe4ed8b46c9c36\"\u003e\u003ccode\u003e5e5b248\u003c/code\u003e\u003c/a\u003e release(turborepo): 2.9.16-canary.2 (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12961\"\u003e#12961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/3b1b6e9655ccafc73b80bca5f8cf815310cb2728\"\u003e\u003ccode\u003e3b1b6e9\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;fix: Preserve nested Bun dependency versions\u0026quot; (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12964\"\u003e#12964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/8d4eaf81af296377e6c7533138b8f8c35b77bd7e\"\u003e\u003ccode\u003e8d4eaf8\u003c/code\u003e\u003c/a\u003e fix: Preserve nested Bun dependency versions (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12963\"\u003e#12963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/2284fa90a3492cd6800567ab2d4946dc5c853c91\"\u003e\u003ccode\u003e2284fa9\u003c/code\u003e\u003c/a\u003e release(turborepo): 2.9.16-canary.1 (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12960\"\u003e#12960\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/5317f656c7d13c382eb97a6fac786ab8a807295a\"\u003e\u003ccode\u003e5317f65\u003c/code\u003e\u003c/a\u003e fix: Retry npm tlog publish failures (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12959\"\u003e#12959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/52e81bd93645e6d0b7fe44470cb93d4020c3dfd5\"\u003e\u003ccode\u003e52e81bd\u003c/code\u003e\u003c/a\u003e fix: Avoid hanging PTY shutdown (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12958\"\u003e#12958\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/c85d4104bdc18df051334210d29c49353c46facf\"\u003e\u003ccode\u003ec85d410\u003c/code\u003e\u003c/a\u003e release(turborepo): 2.9.15 (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12955\"\u003e#12955\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/turborepo/compare/v2.9.6...v2.9.16\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jsdom` from 29.1.0 to 29.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jsdom/jsdom/releases\"\u003ejsdom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev29.1.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003e'border-radius'\u003c/code\u003e computed style serialization. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed computed style computation when using \u003ccode\u003e'background-origin'\u003c/code\u003e and \u003ccode\u003e'background-clip'\u003c/code\u003e CSS properties. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSignificantly optimized initial calls to \u003ccode\u003egetComputedStyle()\u003c/code\u003e, before the cache warms up. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\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/jsdom/jsdom/commit/9b9ea7e10b7842cd38c61458a38774cc3b60c24c\"\u003e\u003ccode\u003e9b9ea7e\u003c/code\u003e\u003c/a\u003e 29.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/07efb7821c992108ec6d4d5fa603f1666e704b1a\"\u003e\u003ccode\u003e07efb78\u003c/code\u003e\u003c/a\u003e Optimize computed style comparison\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/5f6632990297dddf82b1e0b369870ca27c11da90\"\u003e\u003ccode\u003e5f66329\u003c/code\u003e\u003c/a\u003e Fix background-origin/background-clip in background shorthand\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/ad8af77ecc76a572ccd139770df0f27c7c06217a\"\u003e\u003ccode\u003ead8af77\u003c/code\u003e\u003c/a\u003e Fix border shorthand handling\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jsdom/jsdom/compare/v29.1.0...v29.1.1\"\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.5 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee1830604d57f6a02bf28f8067cdffc06\"\u003e\u003ccode\u003e18af98c\u003c/code\u003e\u003c/a\u003e fix(browser): simplify orchestrator otel carrier (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10285\"\u003e#10285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607cc67c7bf52ead13a606321ffdb06a857\"\u003e\u003ccode\u003e3188260\u003c/code\u003e\u003c/a\u003e feat(browser): provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e (#...\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 `@types/node` from 25.6.0 to 25.9.1\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/node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@vitejs/plugin-react` from 6.0.1 to 6.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitejs/vite-plugin-react/releases\"\u003e@​vitejs/plugin-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eplugin-react@6.0.2\u003c/h2\u003e\n\u003ch3\u003eAllow all options in reactCompilerPreset (\u003ca href=\"https://redirect.github.com/vitejs/vite-plugin-react/pull/1189\"\u003e#1189\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003eThis is a type only change. Only \u003ccode\u003ecompilationMode\u003c/code\u003e and \u003ccode\u003etarget\u003c/code\u003e options were available for \u003ccode\u003ereactCompilerPreset\u003c/code\u003e.\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-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md\"\u003e@​vitejs/plugin-react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.2 (2026-05-14)\u003c/h2\u003e\n\u003ch3\u003eAllow all options in reactCompilerPreset (\u003ca href=\"https://redirect.github.com/vitejs/vite-plugin-react/pull/1189\"\u003e#1189\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003eThis is a type only change. Only \u003ccode\u003ecompilationMode\u003c/code\u003e and \u003ccode\u003etarget\u003c/code\u003e options were available for \u003ccode\u003ereactCompilerPreset\u003c/code\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/vitejs/vite-plugin-react/commit/6535b55e956b425e6650ffc2cc98fd23cca1d231\"\u003e\u003ccode\u003e6535b55\u003c/code\u003e\u003c/a\u003e release: plugin-react@6.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/bf0e43b756e3be81f8572d59727c218311f431ef\"\u003e\u003ccode\u003ebf0e43b\u003c/code\u003e\u003c/a\u003e feat(react): whitelist debugging-options (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1189\"\u003e#1189\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/3bd1f08ae0b82ee0e96feb2ff265e61c6fe74b54\"\u003e\u003ccode\u003e3bd1f08\u003c/code\u003e\u003c/a\u003e feat: use carets for rolldown versions (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1216\"\u003e#1216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/2b8df67323265d1ff5ddf47b2db9ab0b9de5c688\"\u003e\u003ccode\u003e2b8df67\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1218\"\u003e#1218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/8fa9619e1b1f51b079f4c1df6bcf076dcafc5aed\"\u003e\u003ccode\u003e8fa9619\u003c/code\u003e\u003c/a\u003e fix(deps): update react 19.2.6 (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1211\"\u003e#1211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/a4296ad2995a8d493528b8d5450a1209de2943cb\"\u003e\u003ccode\u003ea4296ad\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1209\"\u003e#1209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/323ccd72576be636b50baa7d9ce816cc94d5991e\"\u003e\u003ccode\u003e323ccd7\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1196\"\u003e#1196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/a7506e105df00cdadc58c0aecc4512d8cfdd9765\"\u003e\u003ccode\u003ea7506e1\u003c/code\u003e\u003c/a\u003e chore(deps): update vite 8.0.10 (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1198\"\u003e#1198\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/02cff2a0cf5c7e9792b1612baa380228f5e4d3c1\"\u003e\u003ccode\u003e02cff2a\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1184\"\u003e#1184\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-react/commit/4b9c890cdb21078ac45a86873b24f7e8613b8526\"\u003e\u003ccode\u003e4b9c890\u003c/code\u003e\u003c/a\u003e fix(deps): update react 19.2.5 (\u003ca href=\"https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/1181\"\u003e#1181\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vitejs/vite-plugin-react/commits/plugin-react@6.0.2/packages/plugin-react\"\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.10 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\u003ch2\u003ev8.0.13\u003c/h2\u003e\n\u003cp\u003ePlease refer to \u003ca href=\"https://github.com/vitejs/vite/blob/v8.0.13/packages/vite/CHANGELOG.md\"\u003eCHANGELOG.md\u003c/a\u003e for details.\u003c/p\u003e\n\u003ch2\u003ev8.0.12\u003c/h2\u003e\n\u003cp\u003ePlease refer to \u003ca href=\"https://github.com/vitejs/vite/blob/v8.0.12/packages/vite/CHANGELOG.md\"\u003eCHANGELOG.md\u003c/a\u003e for details.\u003c/p\u003e\n\u003ch2\u003ev8.0.11\u003c/h2\u003e\n\u003cp\u003ePlease refer to \u003ca href=\"https://github.com/vitejs/vite/blob/v8.0.11/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/0ae2844ab6d6d1ccf78a2975b8132769fc35b302\"\u003e0ae2844\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTests\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecss:\u003c/strong\u003e sass does not use main field (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22449\"\u003e#22449\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/ebf39a04329ddc6ba765e006a5d463680a952270\"\u003eebf39a0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://github.com/vitejs/vite/compare/v8.0.12...v8.0.13\"\u003e8.0.13\u003c/a\u003e (2026-05-14)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebundled-dev:\u003c/strong\u003e add lazy bundling support (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/21406\"\u003e#21406\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/4f0949f3f13e4b2b34d32bf7b2b4de5f26bea192\"\u003e4f0949f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eoptimizer:\u003c/strong\u003e improve the esbuild plugin converter to pass some properties of build result to \u003ccode\u003eonEnd\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22357\"\u003e#22357\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/47071ce53f21726cf39e999c4407c4828ecbe957\"\u003e47071ce\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate rolldown to 1.0.1 (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22444\"\u003e#22444\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/8c766a6c5ee014969c4e32f29cc265e8e2c96e18\"\u003e8c766a6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebuild:\u003c/strong\u003e copy public directory after building same environment with \u003ccode\u003ewrite=false\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22328\"\u003e#22328\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/158e8ae8efdf7075ab295727e36b5ff68da3243e\"\u003e158e8ae\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecss:\u003c/strong\u003e await sass/less/styl worker disposal on teardown (fix \u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22274\"\u003e#22274\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22275\"\u003e#22275\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/b7edcb7d0dd17ddfeef4ace78d610c099216dade\"\u003eb7edcb7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecss:\u003c/strong\u003e keep deprecated \u003ccode\u003ename\u003c/code\u003e/\u003ccode\u003eoriginalFileName\u003c/code\u003e in synthetic \u003ccode\u003eassetFileNames\u003c/code\u003e call (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22439\"\u003e#22439\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/8e59c97a44d923c4c06f67287a793c9aa5a4ebaa\"\u003e8e59c97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emake \u003ccode\u003eisBundled\u003c/code\u003e per environment (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22257\"\u003e#22257\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/a5763266170f8606836da5c6f987b4b2fd6ddc55\"\u003ea576326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003essr:\u003c/strong\u003e avoid rewriting labels that collide with imports (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22451\"\u003e#22451\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/d9b18e0387a253628d3d834288e79c5f7e85d566\"\u003ed9b18e0\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous Chores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove irrelevant commits from changelog (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22430\"\u003e#22430\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/6ea383859aaf0ef8e673b458f164e84aeb6ff51d\"\u003e6ea3838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate changelog (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22413\"\u003e#22413\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/fcdc87cc6799857e2bab0f44f333a681694fff74\"\u003efcdc87c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003c!-- raw HTML omitted --\u003e\u003ca href=\"https://github.com/vitejs/vite/compare/v8.0.11...v8.0.12\"\u003e8.0.12\u003c/a\u003e (2026-05-11)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate rolldown to 1.0.0 (\u003ca href=\"https://redirect.github.com/vitejs/vite/issues/22401\"\u003e#22401\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite/commit/cf0ff4154b26cffbf18541ade1a50818842731d3\"\u003ecf0ff41\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/vitejs/vite/commit/c917f1ef9d9c6ef131af96d89089d8ec680b18f2\"\u003e\u003ccode\u003ec917f1e\u003c/code\u003e\u003c/a\u003e release: v8.0.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/5d94d1bffdb2a15de9341194d89baec86ce1f693\"\u003e\u003ccode\u003e5d94d1b\u003c/code\u003e\u003c/a\u003e fix(html): handle trailing slash paths in transformIndexHtml (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22480\"\u003e#22480\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/98b81632139d51820f82036e58d6fbbf122b77b3\"\u003e\u003ccode\u003e98b8163\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22471\"\u003e#22471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/96efc88570b6a6ddf1a910f106920cbac07b3cf0\"\u003e\u003ccode\u003e96efc88\u003c/code\u003e\u003c/a\u003e feat: update rolldown to 1.0.2 (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22484\"\u003e#22484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/ebf39a04329ddc6ba765e006a5d463680a952270\"\u003e\u003ccode\u003eebf39a0\u003c/code\u003e\u003c/a\u003e test(css): sass does not use main field (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22449\"\u003e#22449\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/0ae2844ab6d6d1ccf78a2975b8132769fc35b302\"\u003e\u003ccode\u003e0ae2844\u003c/code\u003e\u003c/a\u003e refactor(glob): do not rewrite import path for absolute base (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22310\"\u003e#22310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/7cb728eb629cc677661f1bc52a044ffc0b87fc7f\"\u003e\u003ccode\u003e7cb728e\u003c/code\u003e\u003c/a\u003e chore(deps): update rolldown-related dependencies (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22470\"\u003e#22470\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/b3132dacea9c6e0cf526cd9f0f09d850f577c262\"\u003e\u003ccode\u003eb3132da\u003c/code\u003e\u003c/a\u003e fix(optimizer): pass oxc jsx options to transformSync in dependency scan     ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/e8e9a34dcf2540139de558a10187630884d10217\"\u003e\u003ccode\u003ee8e9a34\u003c/code\u003e\u003c/a\u003e fix(dev): handle errors when sending messages to vite server (\u003ca href=\"https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/22450\"\u003e#22450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite/commit/2c69495f250edf01132d4a20128de19dbe836086\"\u003e\u003ccode\u003e2c69495\u003c/code\u003e\u003c/a\u003e chore: remove irrelevant commits from changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vitejs/vite/commits/v8.0.14/packages/vite\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vite-plugin-dts` from 5.0.0 to 5.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qmhc/unplugin-dts/blob/main/packages/vite-plugin-dts/CHANGELOG.md\"\u003evite-plugin-dts's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/qmhc/unplugin-dts/compare/v1.0.0-beta.7...v5.0.1\"\u003e5.0.1\u003c/a\u003e (2026-05-19)\u003c/h2\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/qmhc/unplugin-dts/commit/b77a250a6fd7e59617a558972cb99c1b3e0dc9b1\"\u003e\u003ccode\u003eb77a250\u003c/code\u003e\u003c/a\u003e release(vite-plugin-dts): v5.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qmhc/unplugin-dts/commit/c1a18b22d60e25c95570ed9a556d499383a0f7bd\"\u003e\u003ccode\u003ec1a18b2\u003c/code\u003e\u003c/a\u003e docs: split README into docs and clean up legacy descriptions\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/qmhc/unplugin-dts/commits/vite-plugin-dts@5.0.1/packages/vite-plugin-dts\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vite-plugin-pwa` from 1.2.0 to 1.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/releases\"\u003evite-plugin-pwa's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.3.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd vite 8 peer dependency support  -  by \u003ca href=\"https://github.com/Hermione-Granger-1176\"\u003e\u003ccode\u003e@​Hermione-Granger-1176\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e \u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/276af62\"\u003e\u003c!-- raw HTML omitted --\u003e(276af)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient\u003c/strong\u003e: Add onNeedReload callback  -  by \u003ca href=\"https://github.com/tomrehnstrom\"\u003e\u003ccode\u003e@​tomrehnstrom\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/fb30890\"\u003e\u003c!-- raw HTML omitted --\u003e(fb308)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/compare/v1.2.0...v1.3.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/vite-pwa/vite-plugin-pwa/commit/05670fc15e1dc717c847c806e1d46794cdd4cddc\"\u003e\u003ccode\u003e05670fc\u003c/code\u003e\u003c/a\u003e chore: release v1.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/207f86ef29e515e205db6211070e51acb2d5b6e7\"\u003e\u003ccode\u003e207f86e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/vite-pwa/vite-plugin-pwa/issues/899\"\u003e#899\u003c/a\u003e from rj-au/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/67f5000eac97ffb5480d4c1b7b3cbc7b5e0d43d9\"\u003e\u003ccode\u003e67f5000\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/vite-pwa/vite-plugin-pwa/issues/929\"\u003e#929\u003c/a\u003e from vite-pwa/userquin/chore-bump-workbox-to-7.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/a9646914a9cb50f60dd69c6c3dfcb83abba4f86d\"\u003e\u003ccode\u003ea964691\u003c/code\u003e\u003c/a\u003e chore: update workbox to 7.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/2432f659b1262c1e214619b70f481967393da2ef\"\u003e\u003ccode\u003e2432f65\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/vite-pwa/vite-plugin-pwa/issues/924\"\u003e#924\u003c/a\u003e from Hermione-Granger-1176/feat/add-vite-8-peer-dep\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/34768187ee2c120c6cb6040a408bbae8bd4ec238\"\u003e\u003ccode\u003e3476818\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/vite-pwa/vite-plugin-pwa/issues/914\"\u003e#914\u003c/a\u003e from tomrehnstrom/feat/on-need-reload\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/276af62eeecf8b5513b80a7021f39be981e5b670\"\u003e\u003ccode\u003e276af62\u003c/code\u003e\u003c/a\u003e feat: add vite 8 peer dependency support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/4e1621588676db62c0c0944d64a35485e257f023\"\u003e\u003ccode\u003e4e16215\u003c/code\u003e\u003c/a\u003e chore: use \u003ccode\u003e\u0026quot;moduleResolution\u0026quot;: \u0026quot;bundler\u0026quot;\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/vite-pwa/vite-plugin-pwa/issues/913\"\u003e#913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/fb30890423891165e2ee1a2f4bc2655842d1fc3c\"\u003e\u003ccode\u003efb30890\u003c/code\u003e\u003c/a\u003e feat(client): add onNeedReload callback\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/commit/3fc4b278bb2bd99c19607984d0583085e34607c3\"\u003e\u003ccode\u003e3fc4b27\u003c/code\u003e\u003c/a\u003e JSDOC: registerType: fix grammar and description\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vite-pwa/vite-plugin-pwa/compare/v1.2.0...v1.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/jukka-matti/variscout/pull/246","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jukka-matti%2Fvariscout/issues/246","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/246/packages"}},{"old_version":"1.50.1","new_version":"1.60.0","update_type":"minor","path":"/js","pr_created_at":"2026-05-30T07:46:42.000Z","version_change":"1.50.1 → 1.60.0","issue":{"uuid":"4553755243","node_id":"PR_kwDOSsC37M7g6bk3","number":13,"state":"open","title":"Bump @playwright/test from 1.50.1 to 1.60.0 in /js","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-30T07:46:42.000Z","updated_at":"2026-05-30T07:46:42.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@playwright/test","old_version":"1.50.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"}],"path":"/js","ecosystem":"npm"},"body":"Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.50.1 to 1.60.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.50.1...v1.60.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 \u003ccode\u003e@​playwright/test\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@playwright/test\u0026package-manager=npm_and_yarn\u0026previous-version=1.50.1\u0026new-version=1.60.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nYou can trigger a rebase of this PR by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/rmcode-benchmark/clean20260529-2327__keycloak__rmcode-dev__PR37038__20260530/pull/13","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/rmcode-benchmark%2Fclean20260529-2327__keycloak__rmcode-dev__PR37038__20260530/issues/13","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/13/packages"}},{"old_version":"1.59.1","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-30T07:13:01.000Z","version_change":"1.59.1 → 1.60.0","issue":{"uuid":"4553666825","node_id":"PR_kwDOSadfsc7g6J-i","number":24,"state":"open","title":"chore: bump the misc group across 1 directory with 41 updates","user":"dependabot[bot]","labels":["chore","size/XL"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T07:13:01.000Z","updated_at":"2026-05-30T07:13:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore: bump","group_name":"misc","update_count":41,"packages":[{"name":"@typescript/native-preview","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"knip","old_version":"6.11.0","new_version":"6.14.2","repository_url":"https://github.com/webpro-nl/knip"},{"name":"lefthook","old_version":"2.1.6","new_version":"2.1.8","repository_url":"https://github.com/evilmartians/lefthook"},{"name":"oxlint-tsgolint","old_version":"0.22.1","new_version":"0.23.0","repository_url":"https://github.com/oxc-project/tsgolint"},{"name":"turbo","old_version":"2.9.8","new_version":"2.9.14","repository_url":"https://github.com/vercel/turborepo"},{"name":"@typescript/native-preview-darwin-arm64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-darwin-x64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-linux-arm","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-linux-arm64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-linux-x64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-win32-arm64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@typescript/native-preview-win32-x64","old_version":"7.0.0-dev.20260504.1","new_version":"7.0.0-dev.20260524.1","repository_url":"https://github.com/microsoft/typescript-go"},{"name":"@ai-sdk/anthropic","old_version":"3.0.74","new_version":"3.0.79","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/devtools","old_version":"0.0.17","new_version":"0.0.18","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/google","old_version":"3.0.67","new_version":"3.0.79","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/google-vertex","old_version":"4.0.118","new_version":"4.0.137","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/mcp","old_version":"1.0.39","new_version":"1.0.43","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/openai","old_version":"3.0.58","new_version":"3.0.65","repository_url":"https://github.com/vercel/ai"},{"name":"@ai-sdk/valibot","old_version":"2.0.27","new_version":"2.0.28","repository_url":"https://github.com/vercel/ai"},{"name":"@aws-sdk/client-sesv2","old_version":"3.1041.0","new_version":"3.1053.0","repository_url":"https://github.com/aws/aws-sdk-js-v3"},{"name":"@litko/yara-x","old_version":"0.5.1","new_version":"0.5.2","repository_url":"https://github.com/cawalch/node-yara-x"},{"name":"@opentelemetry/api-logs","old_version":"0.216.0","new_version":"0.218.0","repository_url":"https://github.com/open-telemetry/opentelemetry-js"},{"name":"@valibot/to-json-schema","old_version":"1.6.0","new_version":"1.7.0","repository_url":"https://github.com/open-circle/valibot"},{"name":"bullmq","old_version":"5.76.5","new_version":"5.77.3","repository_url":"https://github.com/taskforcesh/bullmq"},{"name":"docx","old_version":"9.6.1","new_version":"9.7.0","repository_url":"https://github.com/dolanmiu/docx"},{"name":"elysia-rate-limit","old_version":"4.6.1","new_version":"4.6.2","repository_url":"https://github.com/rayriffy/elysia-rate-limit"},{"name":"marked","old_version":"18.0.3","new_version":"18.0.4","repository_url":"https://github.com/markedjs/marked"},{"name":"nodemailer","old_version":"8.0.7","new_version":"8.0.8","repository_url":"https://github.com/nodemailer/nodemailer"},{"name":"@tauri-apps/cli","old_version":"2.11.0","new_version":"2.11.2","repository_url":"https://github.com/tauri-apps/tauri"},{"name":"@ai-sdk/react","old_version":"3.0.176","new_version":"3.0.193","repository_url":"https://github.com/vercel/ai"},{"name":"@pydantic/genai-prices","old_version":"0.0.56","new_version":"0.0.61","repository_url":"https://github.com/pydantic/genai-prices"},{"name":"@tanstack/react-query","old_version":"5.100.9","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-query-devtools","old_version":"5.100.9","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"immer","old_version":"11.1.4","new_version":"11.1.8","repository_url":"https://github.com/immerjs/immer"},{"name":"zustand","old_version":"5.0.12","new_version":"5.0.13","repository_url":"https://github.com/pmndrs/zustand"},{"name":"react-grab","old_version":"0.1.32","new_version":"0.1.37","repository_url":"https://github.com/aidenybai/react-grab"},{"name":"@stll/stdnum","old_version":"0.0.1","new_version":"1.0.0","repository_url":"https://github.com/stella/stdnum"},{"name":"prosemirror-model","old_version":"1.25.4","new_version":"1.25.7","repository_url":"https://github.com/prosemirror/prosemirror-model"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"tailwind-merge","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"}],"path":null,"ecosystem":"npm"},"body":"Bumps the misc group with 40 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@typescript/native-preview](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [knip](https://github.com/webpro-nl/knip/tree/HEAD/packages/knip) | `6.11.0` | `6.14.2` |\n| [lefthook](https://github.com/evilmartians/lefthook) | `2.1.6` | `2.1.8` |\n| [oxlint-tsgolint](https://github.com/oxc-project/tsgolint) | `0.22.1` | `0.23.0` |\n| [turbo](https://github.com/vercel/turborepo) | `2.9.8` | `2.9.14` |\n| [@typescript/native-preview-darwin-arm64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-darwin-x64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-linux-arm](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-linux-arm64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-linux-x64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-win32-arm64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@typescript/native-preview-win32-x64](https://github.com/microsoft/typescript-go) | `7.0.0-dev.20260504.1` | `7.0.0-dev.20260524.1` |\n| [@ai-sdk/anthropic](https://github.com/vercel/ai/tree/HEAD/packages/anthropic) | `3.0.74` | `3.0.79` |\n| [@ai-sdk/devtools](https://github.com/vercel/ai/tree/HEAD/packages/devtools) | `0.0.17` | `0.0.18` |\n| [@ai-sdk/google](https://github.com/vercel/ai/tree/HEAD/packages/google) | `3.0.67` | `3.0.79` |\n| [@ai-sdk/google-vertex](https://github.com/vercel/ai/tree/HEAD/packages/google-vertex) | `4.0.118` | `4.0.137` |\n| [@ai-sdk/mcp](https://github.com/vercel/ai/tree/HEAD/packages/mcp) | `1.0.39` | `1.0.43` |\n| [@ai-sdk/openai](https://github.com/vercel/ai/tree/HEAD/packages/openai) | `3.0.58` | `3.0.65` |\n| [@ai-sdk/valibot](https://github.com/vercel/ai/tree/HEAD/packages/valibot) | `2.0.27` | `2.0.28` |\n| [@aws-sdk/client-sesv2](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-sesv2) | `3.1041.0` | `3.1053.0` |\n| [@litko/yara-x](https://github.com/cawalch/node-yara-x) | `0.5.1` | `0.5.2` |\n| [@opentelemetry/api-logs](https://github.com/open-telemetry/opentelemetry-js) | `0.216.0` | `0.218.0` |\n| [@valibot/to-json-schema](https://github.com/open-circle/valibot) | `1.6.0` | `1.7.0` |\n| [bullmq](https://github.com/taskforcesh/bullmq) | `5.76.5` | `5.77.3` |\n| [docx](https://github.com/dolanmiu/docx) | `9.6.1` | `9.7.0` |\n| [elysia-rate-limit](https://github.com/rayriffy/elysia-rate-limit) | `4.6.1` | `4.6.2` |\n| [marked](https://github.com/markedjs/marked) | `18.0.3` | `18.0.4` |\n| [nodemailer](https://github.com/nodemailer/nodemailer) | `8.0.7` | `8.0.8` |\n| [@tauri-apps/cli](https://github.com/tauri-apps/tauri) | `2.11.0` | `2.11.2` |\n| [@ai-sdk/react](https://github.com/vercel/ai/tree/HEAD/packages/react) | `3.0.176` | `3.0.193` |\n| [@pydantic/genai-prices](https://github.com/pydantic/genai-prices) | `0.0.56` | `0.0.61` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.100.9` | `5.100.14` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.100.9` | `5.100.14` |\n| [immer](https://github.com/immerjs/immer) | `11.1.4` | `11.1.8` |\n| [zustand](https://github.com/pmndrs/zustand) | `5.0.12` | `5.0.13` |\n| [react-grab](https://github.com/aidenybai/react-grab) | `0.1.32` | `0.1.37` |\n| [@stll/stdnum](https://github.com/stella/stdnum) | `0.0.1` | `1.0.0` |\n| [prosemirror-model](https://github.com/prosemirror/prosemirror-model) | `1.25.4` | `1.25.7` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n\n\nUpdates `@typescript/native-preview` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `knip` from 6.11.0 to 6.14.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/webpro-nl/knip/releases\"\u003eknip's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 6.14.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix vscode-knip build: pin native oxc bindings to bundled JS version (1b45a4103312c9c059560ae2e1eac25d86b4e2ac)\u003c/li\u003e\n\u003cli\u003eRelease vscode-knip@2.1.5 (328892eb04e65b4702e1ef2303db3156b8f2e1a3)\u003c/li\u003e\n\u003cli\u003eFix Astro plugin to support both possible middleware entry points (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1749\"\u003e#1749\u003c/a\u003e) (33e0cc1a530a8cf5b6b05c8b3a3ca55f8fce8a75) - thanks \u003ca href=\"https://github.com/schmalz-dmi\"\u003e\u003ccode\u003e@​schmalz-dmi\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFix LICENSE link (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1760\"\u003e#1760\u003c/a\u003e) (829620f9077ddea086a610c279c7c1250dd66e11) - thanks \u003ca href=\"https://github.com/vortispy\"\u003e\u003ccode\u003e@​vortispy\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFix GraphQL Codegen script config dependencies (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1756\"\u003e#1756\u003c/a\u003e) (e841c6355e7eff240e74010bfd2be8bbb22ff2b6) - thanks \u003ca href=\"https://github.com/jakeleventhal\"\u003e\u003ccode\u003e@​jakeleventhal\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eSet pnpm config via env vars, disable verify-deps in ecosystem tests (53c12248cc3e79fd79f3efde691d463fc795c40f)\u003c/li\u003e\n\u003cli\u003eUpdate slonik ecosystem snapshot (f18410b34c8554364a9f003660bebae5e826de57)\u003c/li\u003e\n\u003cli\u003eFix Serverless TypeScript plugin dependencies (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1757\"\u003e#1757\u003c/a\u003e) (ebde7f8f3e3004db7f51fb5d60a0bdc2452116ef) - thanks \u003ca href=\"https://github.com/jakeleventhal\"\u003e\u003ccode\u003e@​jakeleventhal\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFix extended tsconfig type dependency attribution (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1758\"\u003e#1758\u003c/a\u003e) (f600b09e562317a37844ed8cdf1b9b46e06c9405) - thanks \u003ca href=\"https://github.com/jakeleventhal\"\u003e\u003ccode\u003e@​jakeleventhal\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eFix Bun binary dependency tracking (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1759\"\u003e#1759\u003c/a\u003e) (1b289239f35ff2912195b7e39a96c667c54c1fc5) - thanks \u003ca href=\"https://github.com/jakeleventhal\"\u003e\u003ccode\u003e@​jakeleventhal\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eDetect Babel plugins/presets in Vite plugin options (resolve \u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1761\"\u003e#1761\u003c/a\u003e) (2753d6910743a12a207fca81cb8325c00803963a)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 6.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDetect dynamic imports in Svelte compiler (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1747\"\u003e#1747\u003c/a\u003e) (e1c1b1705f96ed7d6ac537a7969cbd07d238246a) - thanks \u003ca href=\"https://github.com/jinhyuk9714\"\u003e\u003ccode\u003e@​jinhyuk9714\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eDetect dynamic import attributes; share import matcher with Astro-MDX (9dae64166bbc45be1abeb8d741127d109d48d351)\u003c/li\u003e\n\u003cli\u003eWork the docs (close \u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1746\"\u003e#1746\u003c/a\u003e) (919cba2f11d1979b854c7abaaca8992ee8b08e23)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 6.14.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eResolve imports satisfied via transitive peerDeps (d654ec74d)\u003c/li\u003e\n\u003cli\u003eDon't flag undeclared sibling workspace imports as unlisted (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1742\"\u003e#1742\u003c/a\u003e) (e7122a1ae)\u003c/li\u003e\n\u003cli\u003eUpdate github-actions reporter snapshots (2308b5a42)\u003c/li\u003e\n\u003cli\u003eCache syncGlob() results like defaultGlob() does (6c34287a5)\u003c/li\u003e\n\u003cli\u003eTrim redundant statSync calls in FileEntryCache (eee3b899b)\u003c/li\u003e\n\u003cli\u003eCache parsed .gitignore patterns across --cache runs (7ffdc2ff3)\u003c/li\u003e\n\u003cli\u003eTighten cache module callsites (64e507265)\u003c/li\u003e\n\u003cli\u003eExtract shared disk-cache helper used by glob and gitignore caches (0987421d9)\u003c/li\u003e\n\u003cli\u003eSimplify CacheConsultant: replace trampoline with default arrow methods (bebe750d3)\u003c/li\u003e\n\u003cli\u003ePin pnpm minimumReleaseAge and trustPolicy (77efb32e5)\u003c/li\u003e\n\u003cli\u003eEliminate rescanFrontier polling in walkAndAnalyze (38d91b6e3)\u003c/li\u003e\n\u003cli\u003eReduce findWorkspaceByFilePath per-call overhead (91494378f)\u003c/li\u003e\n\u003cli\u003eMemoize DependencyDeputy.getDependencies (a661a2142)\u003c/li\u003e\n\u003cli\u003eTighten module-graph map helpers (drop double-lookup + optional chains) (c11d62fb0)\u003c/li\u003e\n\u003cli\u003eAdd --duration flag for zero-overhead duration measurement (d4b59d89b)\u003c/li\u003e\n\u003cli\u003eCover analysis pipeline with --performance timerify (694dbf44d)\u003c/li\u003e\n\u003cli\u003eAlign --help text (6f12997b1)\u003c/li\u003e\n\u003cli\u003eAdd cli arg shorthands: -p, -s, -w, -D, -f, -F, -u (f21a58710)\u003c/li\u003e\n\u003cli\u003eFormat (8db5346e4)\u003c/li\u003e\n\u003cli\u003eThis one's okay (662ceaf46)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 6.13.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd jest.config.{cts,mts} (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1743\"\u003e#1743\u003c/a\u003e) (44738d678c9992799f5fe4909a01cc5ddd702aa2) - thanks \u003ca href=\"https://github.com/joshkel\"\u003e\u003ccode\u003e@​joshkel\u003c/code\u003e\u003c/a\u003e!\u003c/li\u003e\n\u003cli\u003eUpdate ecosystem tests (74420a614dfa15b81906266279c31ae0bf4e21bd)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexport * as\u003c/code\u003e re-exported namespace case (5923af48fc33aa56c2f42f882aa185e66626453d)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.mts\u003c/code\u003e and \u003ccode\u003e.cts\u003c/code\u003e config files to some plugins (69d1e83123e56c2c441f320c81bae099ba1eb014)\u003c/li\u003e\n\u003cli\u003eDocusaurus: ignore \u003ccode\u003e@generated/*\u003c/code\u003e, handle local plugin paths (ce5f7672fced084bfb017410650b78d36133e1b0)\u003c/li\u003e\n\u003cli\u003eNx: expand \u003ccode\u003e{projectRoot}\u003c/code\u003e / \u003ccode\u003e{workspaceRoot}\u003c/code\u003e token variables (871531228b0cb67ff07fdb9d77316c4340ccaf33)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 6.13.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd mercurial (hg) to command constants (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1737\"\u003e#1737\u003c/a\u003e) (abb08b0958e08a12684deacf0ab62dc7ada38074) - thanks \u003ca href=\"https://github.com/unrevised6419\"\u003e\u003ccode\u003e@​unrevised6419\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/webpro-nl/knip/commit/e93ccaa4d8fd6df6b4e976d2b0472ba5f7d48830\"\u003e\u003ccode\u003ee93ccaa\u003c/code\u003e\u003c/a\u003e Release knip@6.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/2753d6910743a12a207fca81cb8325c00803963a\"\u003e\u003ccode\u003e2753d69\u003c/code\u003e\u003c/a\u003e Detect Babel plugins/presets in Vite plugin options (resolve \u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1761\"\u003e#1761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/1b289239f35ff2912195b7e39a96c667c54c1fc5\"\u003e\u003ccode\u003e1b28923\u003c/code\u003e\u003c/a\u003e Fix Bun binary dependency tracking (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1759\"\u003e#1759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/f600b09e562317a37844ed8cdf1b9b46e06c9405\"\u003e\u003ccode\u003ef600b09\u003c/code\u003e\u003c/a\u003e Fix extended tsconfig type dependency attribution (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1758\"\u003e#1758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/ebde7f8f3e3004db7f51fb5d60a0bdc2452116ef\"\u003e\u003ccode\u003eebde7f8\u003c/code\u003e\u003c/a\u003e Fix Serverless TypeScript plugin dependencies (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1757\"\u003e#1757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/e841c6355e7eff240e74010bfd2be8bbb22ff2b6\"\u003e\u003ccode\u003ee841c63\u003c/code\u003e\u003c/a\u003e Fix GraphQL Codegen script config dependencies (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1756\"\u003e#1756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/829620f9077ddea086a610c279c7c1250dd66e11\"\u003e\u003ccode\u003e829620f\u003c/code\u003e\u003c/a\u003e Fix LICENSE link (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/33e0cc1a530a8cf5b6b05c8b3a3ca55f8fce8a75\"\u003e\u003ccode\u003e33e0cc1\u003c/code\u003e\u003c/a\u003e Fix Astro plugin to support both possible middleware entry points (\u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1749\"\u003e#1749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/b99f1a5b187ba86f1780cf9f246fec9702bb461f\"\u003e\u003ccode\u003eb99f1a5\u003c/code\u003e\u003c/a\u003e Release knip@6.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webpro-nl/knip/commit/919cba2f11d1979b854c7abaaca8992ee8b08e23\"\u003e\u003ccode\u003e919cba2\u003c/code\u003e\u003c/a\u003e Work the docs (close \u003ca href=\"https://github.com/webpro-nl/knip/tree/HEAD/packages/knip/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/webpro-nl/knip/commits/knip@6.14.2/packages/knip\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lefthook` from 2.1.6 to 2.1.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evilmartians/lefthook/releases\"\u003elefthook's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.1.8\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e488a5f99a5a496e5837f757f8ce3e6c6d1415792 fix: do not warn if local hooks path is equal to default hooks path (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1421\"\u003e#1421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.1.7\u003c/h2\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ef415a9d3fce1d4f6af62622cf96c72e04ecf7bd3 chore: go mod tidy\u003c/li\u003e\n\u003cli\u003ecf4ab9ea4580f5aeb0d4b61d4dd169533e5bb0c9 fix: always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1416\"\u003e#1416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e4c0e000d6fe9f35f42efefb9263b0b4cb5dfbd49 fix: apply stage_fixed only if it is safe (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1418\"\u003e#1418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e76aa843ef5ceb6970f61cd2ff28d16dd2ec82272 fix: linter, sacrifice optimization for readability\u003c/li\u003e\n\u003cli\u003e9d53c36ed9a26d3bf66e341a9650a0ecac9b6a37 fix: separate fallback push branch from pathspecs (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1396\"\u003e#1396\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e22c9f773cf93b59005bd244c5b00caab2947a755 fix: try to always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1417\"\u003e#1417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e37d83986d8e6d6bf6792f57e22e7cbb1a9e28064 fix: use contrast colors (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1420\"\u003e#1420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eeb1064d0b8c6248627960bea1abf6891db5a21b1 refactor: add new logger without a global state (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1385\"\u003e#1385\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/evilmartians/lefthook/blob/master/CHANGELOG.md\"\u003elefthook's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.1.8 (2026-05-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: do not warn if local hooks path is equal to default hooks path (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1421\"\u003e#1421\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.7 (2026-05-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use contrast colors (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1420\"\u003e#1420\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: apply stage_fixed only if it is safe (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1418\"\u003e#1418\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: try to always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1417\"\u003e#1417\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1416\"\u003e#1416\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: add new logger without a global state (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1385\"\u003e#1385\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: linter, sacrifice optimization for readability by \u003ca href=\"\"\u003e\u003ccode\u003e@​mrexox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: separate fallback push branch from pathspecs (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/pull/1396\"\u003e#1396\u003c/a\u003e) by \u003ca href=\"\"\u003e\u003ccode\u003e@​lawrence3699\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/evilmartians/lefthook/commit/9e75b2138b4d31b156d3256c2b0617851377aaf2\"\u003e\u003ccode\u003e9e75b21\u003c/code\u003e\u003c/a\u003e 2.1.8: reduce warning for core.hooksPath if it matches the default\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/488a5f99a5a496e5837f757f8ce3e6c6d1415792\"\u003e\u003ccode\u003e488a5f9\u003c/code\u003e\u003c/a\u003e fix: do not warn if local hooks path is equal to default hooks path (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1421\"\u003e#1421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/b5c8310e174489a3705dbbe240eea035058a9128\"\u003e\u003ccode\u003eb5c8310\u003c/code\u003e\u003c/a\u003e 2.1.7: restore unstaged changes when possible\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/37d83986d8e6d6bf6792f57e22e7cbb1a9e28064\"\u003e\u003ccode\u003e37d8398\u003c/code\u003e\u003c/a\u003e fix: use contrast colors (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1420\"\u003e#1420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/4c0e000d6fe9f35f42efefb9263b0b4cb5dfbd49\"\u003e\u003ccode\u003e4c0e000\u003c/code\u003e\u003c/a\u003e fix: apply stage_fixed only if it is safe (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1418\"\u003e#1418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/22c9f773cf93b59005bd244c5b00caab2947a755\"\u003e\u003ccode\u003e22c9f77\u003c/code\u003e\u003c/a\u003e fix: try to always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1417\"\u003e#1417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/cf4ab9ea4580f5aeb0d4b61d4dd169533e5bb0c9\"\u003e\u003ccode\u003ecf4ab9e\u003c/code\u003e\u003c/a\u003e fix: always restore unstaged changes (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1416\"\u003e#1416\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/f415a9d3fce1d4f6af62622cf96c72e04ecf7bd3\"\u003e\u003ccode\u003ef415a9d\u003c/code\u003e\u003c/a\u003e chore: go mod tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/eb1064d0b8c6248627960bea1abf6891db5a21b1\"\u003e\u003ccode\u003eeb1064d\u003c/code\u003e\u003c/a\u003e refactor: add new logger without a global state (\u003ca href=\"https://redirect.github.com/evilmartians/lefthook/issues/1385\"\u003e#1385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evilmartians/lefthook/commit/76aa843ef5ceb6970f61cd2ff28d16dd2ec82272\"\u003e\u003ccode\u003e76aa843\u003c/code\u003e\u003c/a\u003e fix: linter, sacrifice optimization for readability\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/evilmartians/lefthook/compare/v2.1.6...v2.1.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `oxlint-tsgolint` from 0.22.1 to 0.23.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/oxc-project/tsgolint/releases\"\u003eoxlint-tsgolint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): update crate-ci/typos action to v1.45.2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/915\"\u003eoxc-project/tsgolint#915\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add skill for upgrading typescript-go by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/918\"\u003eoxc-project/tsgolint#918\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update pnpm to v10.33.2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/921\"\u003eoxc-project/tsgolint#921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: update typescript-go submodule by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/922\"\u003eoxc-project/tsgolint#922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: attach tsconfig path to diagnostics by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/923\"\u003eoxc-project/tsgolint#923\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(prefer-nullish-coalescing): parenthesize mixed logical fixes by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/924\"\u003eoxc-project/tsgolint#924\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etests(return-await): cover non-async arrow functions by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/926\"\u003eoxc-project/tsgolint#926\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update github.com/go-json-experiment/json digest to b6187a3 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/927\"\u003eoxc-project/tsgolint#927\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update github actions by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/928\"\u003eoxc-project/tsgolint#928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update crate-ci/typos action to v1.46.0 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/929\"\u003eoxc-project/tsgolint#929\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update module github.com/dlclark/regexp2 to v2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/930\"\u003eoxc-project/tsgolint#930\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: update typescript-go submodule by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/931\"\u003eoxc-project/tsgolint#931\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update typescript-go digest to 48e2953 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/933\"\u003eoxc-project/tsgolint#933\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update typescript-go digest to 5eb880f by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/936\"\u003eoxc-project/tsgolint#936\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(no-misused-promises): handle empty JSX attributes by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/938\"\u003eoxc-project/tsgolint#938\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(no-unsafe-enum-comparison): flag string literal unions by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/937\"\u003eoxc-project/tsgolint#937\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update typescript-go digest to e1f8f97 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/939\"\u003eoxc-project/tsgolint#939\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update typescript-go digest to 092b34f by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/940\"\u003eoxc-project/tsgolint#940\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: configure typescript-go renovate schedule by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/941\"\u003eoxc-project/tsgolint#941\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update github actions by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/945\"\u003eoxc-project/tsgolint#945\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency dprint-typescript to v0.96.0 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/947\"\u003eoxc-project/tsgolint#947\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update gomod by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/946\"\u003eoxc-project/tsgolint#946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update crate-ci/typos action to v1.46.1 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/948\"\u003eoxc-project/tsgolint#948\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(prefer-nullish-coalescing): emit suggestion over fix by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/951\"\u003eoxc-project/tsgolint#951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: update packageManager to pnpm 11.0.4 by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/953\"\u003eoxc-project/tsgolint#953\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: update typescript-go submodule by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/955\"\u003eoxc-project/tsgolint#955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(no-nullable-type-assertion-style): use suggestion instead of fix by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/956\"\u003eoxc-project/tsgolint#956\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: Update Go version requirement to 1.26 in CONTRIBUTING.md. by \u003ca href=\"https://github.com/connorshea\"\u003e\u003ccode\u003e@​connorshea\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/957\"\u003eoxc-project/tsgolint#957\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: allow safe promise intersection members by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/959\"\u003eoxc-project/tsgolint#959\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: switch security workflow to ubuntu-latest by \u003ca href=\"https://github.com/Boshen\"\u003e\u003ccode\u003e@​Boshen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/962\"\u003eoxc-project/tsgolint#962\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency vitest to v4.1.6 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/963\"\u003eoxc-project/tsgolint#963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update module github.com/dlclark/regexp2/v2 to v2.0.3 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/964\"\u003eoxc-project/tsgolint#964\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency dprint-markdown to v0.22.0 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/965\"\u003eoxc-project/tsgolint#965\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update github actions by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/966\"\u003eoxc-project/tsgolint#966\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf(no-unnecessary-type-parameters): stop counting settled candidates by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/967\"\u003eoxc-project/tsgolint#967\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add \u003ccode\u003edprint\u003c/code\u003e to pnpm \u003ccode\u003eallowBuilds\u003c/code\u003e by \u003ca href=\"https://github.com/camc314\"\u003e\u003ccode\u003e@​camc314\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/pull/968\"\u003eoxc-project/tsgolint#968\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/oxc-project/tsgolint/compare/v0.22.1...v0.23.0\"\u003ehttps://github.com/oxc-project/tsgolint/compare/v0.22.1...v0.23.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/oxc-project/tsgolint/commit/0e575fae8407227601f66c1d8d8927a535aea58b\"\u003e\u003ccode\u003e0e575fa\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003edprint\u003c/code\u003e to pnpm \u003ccode\u003eallowBuilds\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/968\"\u003e#968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/bb8886bef7ae76cf3280852228a05214c54f2a83\"\u003e\u003ccode\u003ebb8886b\u003c/code\u003e\u003c/a\u003e perf(no-unnecessary-type-parameters): stop counting settled candidates (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/967\"\u003e#967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/90be7b2609efd2bcae290b09e4835fe9ae52c63e\"\u003e\u003ccode\u003e90be7b2\u003c/code\u003e\u003c/a\u003e chore(deps): update github actions (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/966\"\u003e#966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/cdae358c525a9a93ab48af36b51ae2a6c740830d\"\u003e\u003ccode\u003ecdae358\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency dprint-markdown to v0.22.0 (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/965\"\u003e#965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/d356c9e3d66d0b4fbe1b7353fcf5b8f857d6ed80\"\u003e\u003ccode\u003ed356c9e\u003c/code\u003e\u003c/a\u003e chore(deps): update module github.com/dlclark/regexp2/v2 to v2.0.3 (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/964\"\u003e#964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/7cba6be4c0d972578d14e52c7a454a0a15961727\"\u003e\u003ccode\u003e7cba6be\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency vitest to v4.1.6 (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/963\"\u003e#963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/1dcd2a6f4138f4b9a273a231def838995ac589e5\"\u003e\u003ccode\u003e1dcd2a6\u003c/code\u003e\u003c/a\u003e ci: switch security workflow to ubuntu-latest (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/962\"\u003e#962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/b4f66246a62ea03d7cd664bf940d2f978c2068d5\"\u003e\u003ccode\u003eb4f6624\u003c/code\u003e\u003c/a\u003e fix: allow safe promise intersection members (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/959\"\u003e#959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/233eeb35db9d698db67c4d4247963047ceb30fb7\"\u003e\u003ccode\u003e233eeb3\u003c/code\u003e\u003c/a\u003e docs: Update Go version requirement to 1.26 in CONTRIBUTING.md. (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/957\"\u003e#957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oxc-project/tsgolint/commit/8bd37abc596e5dd0d54ec6625b6c2a77922b7ca4\"\u003e\u003ccode\u003e8bd37ab\u003c/code\u003e\u003c/a\u003e fix(no-nullable-type-assertion-style): use suggestion instead of fix (\u003ca href=\"https://redirect.github.com/oxc-project/tsgolint/issues/956\"\u003e#956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/oxc-project/tsgolint/compare/v0.22.1...v0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `turbo` from 2.9.8 to 2.9.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/turborepo/releases\"\u003eturbo's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTurborepo v2.9.14\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release contains important security fixes.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eHigh:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/security/advisories/GHSA-5xc8-49mv-x4mm\"\u003eGHSA-5xc8-49mv-x4mm: Turborepo VSCode Extension command injection\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLow:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/security/advisories/GHSA-hcf7-66rw-9f5r\"\u003eGHSA-hcf7-66rw-9f5r: Login callback CSRF/session fixation\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/security/advisories/GHSA-3qcw-2rhx-2726\"\u003eGHSA-3qcw-2rhx-2726: Unexpected local code execution during Yarn Berry detection\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eChangelog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erelease(turborepo): 2.9.12 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12774\"\u003evercel/turborepo#12774\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Restore docs mobile menu by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12782\"\u003evercel/turborepo#12782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Use \u003ccode\u003epull_request\u003c/code\u003e for PR title linting by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12787\"\u003evercel/turborepo#12787\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Scope GitHub Actions caches by branch by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12788\"\u003evercel/turborepo#12788\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest: Validate lockfiles without dependency downloads by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12789\"\u003evercel/turborepo#12789\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemoved unneeded import form hash creation script in docs by \u003ca href=\"https://github.com/dancrumb\"\u003e\u003ccode\u003e@​dancrumb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12799\"\u003evercel/turborepo#12799\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Validate auth callback state by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12802\"\u003evercel/turborepo#12802\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Harden VS Code extension command execution by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12800\"\u003evercel/turborepo#12800\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Avoid project-local Yarn during detection by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12801\"\u003evercel/turborepo#12801\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: Release 2.9.13 by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12803\"\u003evercel/turborepo#12803\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/dancrumb\"\u003e\u003ccode\u003e@​dancrumb\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12799\"\u003evercel/turborepo#12799\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/vercel/turborepo/compare/v2.9.12...v2.9.14\"\u003ehttps://github.com/vercel/turborepo/compare/v2.9.12...v2.9.14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTurborepo v2.9.13-canary.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eChangelog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erelease(turborepo): 2.9.11-canary.7 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12768\"\u003evercel/turborepo#12768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Allow \u003ccode\u003e$TURBO_EXTENDS$\u003c/code\u003e in LSP diagnostics by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12770\"\u003evercel/turborepo#12770\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.11 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12771\"\u003evercel/turborepo#12771\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Allow transit nodes in LSP diagnostics by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12773\"\u003evercel/turborepo#12773\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erelease(turborepo): 2.9.12 by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12774\"\u003evercel/turborepo#12774\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Restore docs mobile menu by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12782\"\u003evercel/turborepo#12782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Use \u003ccode\u003epull_request\u003c/code\u003e for PR title linting by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12787\"\u003evercel/turborepo#12787\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Scope GitHub Actions caches by branch by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12788\"\u003evercel/turborepo#12788\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest: Validate lockfiles without dependency downloads by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12789\"\u003evercel/turborepo#12789\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemoved unneeded import form hash creation script in docs by \u003ca href=\"https://github.com/dancrumb\"\u003e\u003ccode\u003e@​dancrumb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12799\"\u003evercel/turborepo#12799\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Validate auth callback state by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12802\"\u003evercel/turborepo#12802\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Harden VS Code extension command execution by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12800\"\u003evercel/turborepo#12800\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Avoid project-local Yarn during detection by \u003ca href=\"https://github.com/anthonyshew\"\u003e\u003ccode\u003e@​anthonyshew\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vercel/turborepo/pull/12801\"\u003evercel/turborepo#12801\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/vercel/turborepo/commit/fc62fe0d9c347d1d24f0ed8946284856593ddb93\"\u003e\u003ccode\u003efc62fe0\u003c/code\u003e\u003c/a\u003e publish 2.9.14 to registry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/fb8c9aec0f9e83f95783659a5ce9c4478cf62cb9\"\u003e\u003ccode\u003efb8c9ae\u003c/code\u003e\u003c/a\u003e chore: Release 2.9.13 (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12803\"\u003e#12803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/e8e629da4e1fb75231089e91b19be9d327a3e649\"\u003e\u003ccode\u003ee8e629d\u003c/code\u003e\u003c/a\u003e fix: Avoid project-local Yarn during detection (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12801\"\u003e#12801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/91c90cbf12f524c5c29b713d6472dd5fcdecb309\"\u003e\u003ccode\u003e91c90cb\u003c/code\u003e\u003c/a\u003e fix: Harden VS Code extension command execution (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12800\"\u003e#12800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/84f450894e87da1eed864d51f6f637f26980d560\"\u003e\u003ccode\u003e84f4508\u003c/code\u003e\u003c/a\u003e fix: Validate auth callback state (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12802\"\u003e#12802\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/1779ad7901384f106236a6e196059e4929745514\"\u003e\u003ccode\u003e1779ad7\u003c/code\u003e\u003c/a\u003e Removed unneeded import form hash creation script in docs (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12799\"\u003e#12799\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/71f8c90a807ffb9b9876ea8a04f523f473bf5c8d\"\u003e\u003ccode\u003e71f8c90\u003c/code\u003e\u003c/a\u003e test: Validate lockfiles without dependency downloads (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12789\"\u003e#12789\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/5fcb96024d503127bb0ed760ebe159b7716c52b3\"\u003e\u003ccode\u003e5fcb960\u003c/code\u003e\u003c/a\u003e ci: Scope GitHub Actions caches by branch (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12788\"\u003e#12788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/4cf9fabc9a6f6c99fe4e2f2da9f35be631be062a\"\u003e\u003ccode\u003e4cf9fab\u003c/code\u003e\u003c/a\u003e ci: Use \u003ccode\u003epull_request\u003c/code\u003e for PR title linting (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12787\"\u003e#12787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/turborepo/commit/859c629bc401f239ac7980a132746ca90478e17c\"\u003e\u003ccode\u003e859c629\u003c/code\u003e\u003c/a\u003e fix: Restore docs mobile menu (\u003ca href=\"https://redirect.github.com/vercel/turborepo/issues/12782\"\u003e#12782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/turborepo/compare/v2.9.8...v2.9.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-darwin-arm64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-darwin-x64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-linux-arm` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-linux-arm64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-linux-x64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-win32-arm64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript/native-preview-win32-x64` from 7.0.0-dev.20260504.1 to 7.0.0-dev.20260524.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/microsoft/typescript-go/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/anthropic` from 3.0.74 to 3.0.79\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/anthropic@3.0.79/packages/anthropic/CHANGELOG.md\"\u003e@​ai-sdk/anthropic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.0.79\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ed61a788: Handle errors from anthropic websearch tool\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.78\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e6e28d25: fix(anthropic): propagate toModelOutput providerOption to anthropic tool results\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.77\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ed53314d: feat(anthropic): add the new advisor tool\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.76\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [f591416]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/provider-utils\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.0.27\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.75\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e3f06680: Remove stale \u003ccode\u003eeffort-2025-11-24\u003c/code\u003e beta header — the extended thinking effort parameter is GA and no longer requires the beta flag. Vertex AI's strict validator was actively rejecting requests with this header.\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/vercel/ai/commit/7ebba33ab965b5b26f93705719d76db45089bb3c\"\u003e\u003ccode\u003e7ebba33\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15557\"\u003e#15557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/d61a788b8faa54b630d5672e71ddd8aecd61f72c\"\u003e\u003ccode\u003ed61a788\u003c/code\u003e\u003c/a\u003e Backport: Handle errors in anthropic's web search tool (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15555\"\u003e#15555\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/2e7664bff4294f2f5b21c30136ca24d12c4e9b5c\"\u003e\u003ccode\u003e2e7664b\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15315\"\u003e#15315\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/6e28d252ffc4032abcbe78a463807d0af90bbaa7\"\u003e\u003ccode\u003e6e28d25\u003c/code\u003e\u003c/a\u003e Backport: fix(anthropic): propagate toModelOutput providerOption to anthropic...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/d37fb1f2dad4d96605ffd2ac3d4b55e0bccdc482\"\u003e\u003ccode\u003ed37fb1f\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15202\"\u003e#15202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/d53314da429ff19453b926c010fedb23e95911d7\"\u003e\u003ccode\u003ed53314d\u003c/code\u003e\u003c/a\u003e Backport: feat(anthropic): add the new advisor tool (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15203\"\u003e#15203\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e3ccdb5987c07459ffd9be56088c5ac9d142fba2\"\u003e\u003ccode\u003ee3ccdb5\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15094\"\u003e#15094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/74a7a20afff8c87ce6f1e15a3b1745e22c1853ca\"\u003e\u003ccode\u003e74a7a20\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15012\"\u003e#15012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/3f06680fd76d26d9b4d0cb62780e016d6f749e6f\"\u003e\u003ccode\u003e3f06680\u003c/code\u003e\u003c/a\u003e Backport: fix(anthropic): remove stale effort-2025-11-24 beta header (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/anthropic/issues/15011\"\u003e#15011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/anthropic@3.0.79/packages/anthropic\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/devtools` from 0.0.17 to 0.0.18\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/devtools@0.0.18/packages/devtools/CHANGELOG.md\"\u003e@​ai-sdk/devtools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.0.18\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e41aff6f: fix(devtools): add pointer cursor to DevTools buttons\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/vercel/ai/commit/c930c3df3fe94b7554881423d03a82f132963a94\"\u003e\u003ccode\u003ec930c3d\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/devtools/issues/15292\"\u003e#15292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/41aff6f50f616ef64344684691debe2675f9967f\"\u003e\u003ccode\u003e41aff6f\u003c/code\u003e\u003c/a\u003e Backport: fix(devtools): add pointer cursor to DevTools buttons (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/devtools/issues/15291\"\u003e#15291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/devtools@0.0.18/packages/devtools\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/google` from 3.0.67 to 3.0.79\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/google@3.0.79/packages/google/CHANGELOG.md\"\u003e@​ai-sdk/google's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.0.79\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecfa0cb2: feat(provider/google): support Google search grounding when using \u003ccode\u003egenerateImage\u003c/code\u003e with Gemini\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.78\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ecf63828: fix(google): read \u003ccode\u003eserviceTier\u003c/code\u003e from \u003ccode\u003eusageMetadata.serviceTier\u003c/code\u003e in both generate and stream paths\u003c/p\u003e\n\u003cp\u003eThe previous implementation read \u003ccode\u003eserviceTier\u003c/code\u003e from the \u003ccode\u003ex-gemini-service-tier\u003c/code\u003e\nresponse header, which is only populated on non-streaming responses. Gemini\nstreaming includes the value in \u003ccode\u003eusageMetadata.serviceTier\u003c/code\u003e on every chunk, so\n\u003ccode\u003eproviderMetadata.google.serviceTier\u003c/code\u003e was always \u003ccode\u003enull\u003c/code\u003e for streams. Read from\n\u003ccode\u003eusageMetadata\u003c/code\u003e for both paths instead.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.77\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e0f9f9bf: feat(google): read \u003ccode\u003eserviceTier\u003c/code\u003e from \u003ccode\u003ex-gemini-service-tier\u003c/code\u003e response header in Gemini API and use PayGo for Vertex\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.76\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ef259bd1: fix(google): fix streaming tool call args\u003c/li\u003e\n\u003cli\u003e756fec1: feat(provider/google): add \u003ccode\u003egemini-3.5-flash\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.75\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eab15576: feat(google): update Interactions API implementation to cater for upstream breaking changes coming May 26\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.74\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e3ca0daa: fix(provider/google): support \u003ccode\u003efunctionCall.id\u003c/code\u003e when returned by Gemini API and provide matching \u003ccode\u003efunctionResponse.id\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.73\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebb1eb98: feat(google): add \u003ccode\u003efileData\u003c/code\u003e support to embedding model\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.72\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/vercel/ai/commit/fc83fa3cd00a4dcf98032adcabea68eaa77e013c\"\u003e\u003ccode\u003efc83fa3\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15532\"\u003e#15532\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/cfa0cb26fb3dd0d0e6d2dd6132bc664f8f3906ab\"\u003e\u003ccode\u003ecfa0cb2\u003c/code\u003e\u003c/a\u003e Backport: feat(provider/google): support Google search grounding when using `...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/93ad540ed13863363ebc0bd5a9c574a082602d27\"\u003e\u003ccode\u003e93ad540\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15489\"\u003e#15489\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/cf63828cc3e598b8cad829f56322960167cba769\"\u003e\u003ccode\u003ecf63828\u003c/code\u003e\u003c/a\u003e Backport: fix(google): read serviceTier from usageMetadata in stream + genera...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/a15eda90f03049bfba99183b4fd308ca63372b86\"\u003e\u003ccode\u003ea15eda9\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15473\"\u003e#15473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/0f9f9bfc46d37d42c9a014437ff3e45d9fa46c55\"\u003e\u003ccode\u003e0f9f9bf\u003c/code\u003e\u003c/a\u003e Backport: fix(google): read serviceTier from x-gemini-service-tier response h...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/b9241afab7e9c703bfdb6ee9b0846f538c014a14\"\u003e\u003ccode\u003eb9241af\u003c/code\u003e\u003c/a\u003e Backport: feat(provider/google): add support for managed agents in the Intera...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e33b836af7673d45eb90704574ffae5bdc6ba824\"\u003e\u003ccode\u003ee33b836\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15440\"\u003e#15440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/f259bd1cef2c87f64105391e367b1bb5f884d6ea\"\u003e\u003ccode\u003ef259bd1\u003c/code\u003e\u003c/a\u003e Backport: fix(google): fix streaming tool call args (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15442\"\u003e#15442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/756fec1c679b0ad5568d5edff96cf3ac90d992e6\"\u003e\u003ccode\u003e756fec1\u003c/code\u003e\u003c/a\u003e Backport: feat(provider/google): add \u003ccode\u003egemini-3.5-flash\u003c/code\u003e (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google/issues/15436\"\u003e#15436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/google@3.0.79/packages/google\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/google-vertex` from 4.0.118 to 4.0.137\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/google-vertex@4.0.137/packages/google-vertex/CHANGELOG.md\"\u003e@​ai-sdk/google-vertex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.137\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [e40e1d4]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/openai-compatible\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.0.48\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.136\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [d61a788]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/anthropic\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.0.79\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.135\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [cfa0cb2]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/google\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.0.79\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.134\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [cf63828]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/google\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.0.78\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.133\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [0f9f9bf]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/google\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.0.77\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.132\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e756fec1: feat(provider/google): add \u003ccode\u003egemini-3.5-flash\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [f259bd1]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [756fec1]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/google\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.0.76\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.131\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e00bd77f: fix(google-vertex): propagate project-id set in provider instance creation\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/vercel/ai/commit/0838d52fe657c4f04891b78423fbc636a543851a\"\u003e\u003ccode\u003e0838d52\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15565\"\u003e#15565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/7ebba33ab965b5b26f93705719d76db45089bb3c\"\u003e\u003ccode\u003e7ebba33\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15557\"\u003e#15557\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/fc83fa3cd00a4dcf98032adcabea68eaa77e013c\"\u003e\u003ccode\u003efc83fa3\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15532\"\u003e#15532\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/93ad540ed13863363ebc0bd5a9c574a082602d27\"\u003e\u003ccode\u003e93ad540\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15489\"\u003e#15489\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/a15eda90f03049bfba99183b4fd308ca63372b86\"\u003e\u003ccode\u003ea15eda9\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15473\"\u003e#15473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e33b836af7673d45eb90704574ffae5bdc6ba824\"\u003e\u003ccode\u003ee33b836\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15440\"\u003e#15440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/756fec1c679b0ad5568d5edff96cf3ac90d992e6\"\u003e\u003ccode\u003e756fec1\u003c/code\u003e\u003c/a\u003e Backport: feat(provider/google): add \u003ccode\u003egemini-3.5-flash\u003c/code\u003e (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15436\"\u003e#15436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/f4fe7bcccec67a4fef6c4fc58213aa0aa22000b8\"\u003e\u003ccode\u003ef4fe7bc\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15415\"\u003e#15415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/00bd77f56923236cbd437c7fd22dece3b94042dd\"\u003e\u003ccode\u003e00bd77f\u003c/code\u003e\u003c/a\u003e Backport: fix(google-vertex): propagate project-id set in provider instance c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/f8d30032da41bdfd1d4c560bb6439dec8021603e\"\u003e\u003ccode\u003ef8d3003\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/google-vertex/issues/15356\"\u003e#15356\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/google-vertex@4.0.137/packages/google-vertex\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/mcp` from 1.0.39 to 1.0.43\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/mcp@1.0.43/packages/mcp/CHANGELOG.md\"\u003e@​ai-sdk/mcp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.0.43\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ee2b923f: fix(mcp): deduplicate auth refresh on http transport\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.0.42\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e725f2ed: feat(mcp): expose server instructions to be accessible through client\u003c/li\u003e\n\u003cli\u003e7281592: fix(mcp): use negotiated protocol version in transport request headers\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.0.41\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ef591416: feat(ai): add toolMetadata for tool specific metdata\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [f591416]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/provider-utils\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.0.27\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.0.40\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e221a984: Add \u003ccode\u003eresource_link\u003c/code\u003e content type to \u003ccode\u003eCallToolResultSchema\u003c/code\u003e and \u003ccode\u003ePromptMessageSchema\u003c/code\u003e per MCP spec. Fixes hard rejection when MCP servers return \u003ccode\u003eresource_link\u003c/code\u003e content parts with zod ≥ 4.4.x.\u003c/li\u003e\n\u003cli\u003e0084974: feat(mcp): deprecate name and use clientName for MCPClient\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/vercel/ai/commit/0075589b2ac393a25fda6ed0131bf72a1be926b8\"\u003e\u003ccode\u003e0075589\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15529\"\u003e#15529\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e2b923f5cd81d57bc6f86022287b185eaefad16b\"\u003e\u003ccode\u003ee2b923f\u003c/code\u003e\u003c/a\u003e Backport: fix(mcp): deduplicate auth refresh on http transport (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15528\"\u003e#15528\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/5e287d0b11a59978c1ee87d74f308f4a88efef2c\"\u003e\u003ccode\u003e5e287d0\u003c/code\u003e\u003c/a\u003e Backport: chore: add readme for \u003ccode\u003e@​ai-sdk/mcp\u003c/code\u003e (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15450\"\u003e#15450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/8ccd4313866425d2677a766aeb741d7df8b7e344\"\u003e\u003ccode\u003e8ccd431\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15168\"\u003e#15168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/725f2edb4df1a55f05a32421b1b2a9792a69e7d2\"\u003e\u003ccode\u003e725f2ed\u003c/code\u003e\u003c/a\u003e Backport: feat(mcp): expose server instructions to be accessible through clie...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/728159283538ded36f254730b6b4c9a7043ffb17\"\u003e\u003ccode\u003e7281592\u003c/code\u003e\u003c/a\u003e Backport: fix(mcp): use negotiated protocol version in transport request head...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e3ccdb5987c07459ffd9be56088c5ac9d142fba2\"\u003e\u003ccode\u003ee3ccdb5\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15094\"\u003e#15094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/f591416195ac03f03d16c9f50e074586fa4c2088\"\u003e\u003ccode\u003ef591416\u003c/code\u003e\u003c/a\u003e Backport: feat(ai): add toolMetadata for tool specific metdata (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15053\"\u003e#15053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/74a7a20afff8c87ce6f1e15a3b1745e22c1853ca\"\u003e\u003ccode\u003e74a7a20\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15012\"\u003e#15012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/008497419e76fbcbe460829fbd785539a0b41ad0\"\u003e\u003ccode\u003e0084974\u003c/code\u003e\u003c/a\u003e Backport: feat(mcp): deprecate name and use clientName for MCPClient (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/mcp/issues/15003\"\u003e#15003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/mcp@1.0.43/packages/mcp\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/openai` from 3.0.58 to 3.0.65\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/openai@3.0.65/packages/openai/CHANGELOG.md\"\u003e@​ai-sdk/openai's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.0.65\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eeb52378: fix(openai): skip passing reasoning items when using previous response id\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.64\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eb7ed8bd: feat(openai): add opt-in pass-through for unsupported file media types\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.63\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [f591416]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/provider-utils\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.0.27\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.62\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e65edcca: feat: add allowedTools provider option for OpenAI Responses\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.61\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eb93f9b4: feat(provider/openai): forward imageDetail providerOptions on tool-result image content\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.60\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e6dcd8e6: feat(openai): add GPT-5.5 chat model IDs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.0.59\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e38966ab: fix(openai, openai-compatible): only send null content for assistant messages with tool calls\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/vercel/ai/commit/1a3ec6d76fcc5333ac9b2751f3938cbe918efef2\"\u003e\u003ccode\u003e1a3ec6d\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15513\"\u003e#15513\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/eb523789b342aa21742c0a06f531604782820aff\"\u003e\u003ccode\u003eeb52378\u003c/code\u003e\u003c/a\u003e Backport: fix(openai): skip passing reasoning items when using previous respo...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/2e7664bff4294f2f5b21c30136ca24d12c4e9b5c\"\u003e\u003ccode\u003e2e7664b\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15315\"\u003e#15315\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/b7ed8bdac18d2e71b4c392f08c8d8f03204ca8f4\"\u003e\u003ccode\u003eb7ed8bd\u003c/code\u003e\u003c/a\u003e Backport: feat(openai): add opt-in pass-through for unsupported file media ty...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/e3ccdb5987c07459ffd9be56088c5ac9d142fba2\"\u003e\u003ccode\u003ee3ccdb5\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15094\"\u003e#15094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/bf9de314a7e747019d73dedad7c840da25cc94d5\"\u003e\u003ccode\u003ebf9de31\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15046\"\u003e#15046\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/65edcca7edb360ea6c3fa703ff5662c893e9ec0b\"\u003e\u003ccode\u003e65edcca\u003c/code\u003e\u003c/a\u003e Backport: feat(openai): add allowedTools provider option for Responses (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15044\"\u003e#15044\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/ee37690cc8bcf97710ba391dde4fdfca3c1e1405\"\u003e\u003ccode\u003eee37690\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/15020\"\u003e#15020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/b93f9b4f806c59fce982c42d4dfa7d19f4a1f928\"\u003e\u003ccode\u003eb93f9b4\u003c/code\u003e\u003c/a\u003e Backport: feat(provider/openai): forward imageDetail providerOptions on tool-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/ai/commit/c7061114178e8bf86cc9ac604ebbbe0e7866c7eb\"\u003e\u003ccode\u003ec706111\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/openai/issues/14971\"\u003e#14971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/openai@3.0.65/packages/openai\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ai-sdk/valibot` from 2.0.27 to 2.0.28\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/ai/blob/@ai-sdk/valibot@2.0.28/packages/valibot/CHANGELOG.md\"\u003e@​ai-sdk/valibot's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.28\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [f591416]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​ai-sdk/provider-utils\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.0.27\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/vercel/ai/commit/e3ccdb5987c07459ffd9be56088c5ac9d142fba2\"\u003e\u003ccode\u003ee3ccdb5\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/ai/tree/HEAD/packages/valibot/issues/15094\"\u003e#15094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vercel/ai/commits/@ai-sdk/valibot@2.0.28/packages/valibot\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@aws-sdk/client-sesv2` from 3.1041.0 to 3.1053.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws/aws-sdk-js-v3/releases\"\u003e@​aws-sdk/client-sesv2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1053.0\u003c/h2\u003e\n\u003ch4\u003e3.1053.0(2026-05-22)\u003c/h4\u003e\n\u003ch5\u003eDocumentation Changes\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient-gameliftstreams:\u003c/strong\u003e  Added new Gen6 stream classes based on the EC2 G6e instance family. These classes are designed for streaming high-fidelity, graphically demanding games and applications that benefit from additional GPU memory and performance. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/bf88fa508bf74c7120202668d66b1657601e0d32\"\u003ebf88fa50\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003eNew Features\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclients:\u003c/strong\u003e  update client endpoints as of 2026-05-22 (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/3518814ad7011517e95ba077b4d60b64834dc0f5\"\u003e3518814a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-appconfig:\u003c/strong\u003e  Adding new BDD representation of endpoint ruleset (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/e757a91539c7e5633896a6165098a1802de3255c\"\u003ee757a915\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-repostspace:\u003c/strong\u003e  Adding new BDD representation of endpoint ruleset (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/15fec74b7b20e186a9eb70d593819dfa73b7f782\"\u003e15fec74b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-ivs-realtime:\u003c/strong\u003e  Adding new BDD representation of endpoint ruleset (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/adeea78b85eb00bed1a973b7344ecddbd89345f0\"\u003eadeea78b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-cloudcontrol:\u003c/strong\u003e  Adding new BDD representation of endpoint ruleset (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/2e7ef3bf7a1497a06a0ae1cbdfaa6bfa68b6ffe4\"\u003e2e7ef3bf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-tnb:\u003c/strong\u003e  Adding new BDD representation of endpoint ruleset (\u003ca href=\"https:/...\n\n_Description has been truncated_","html_url":"https://github.com/jon-aiken/stella/pull/24","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/jon-aiken%2Fstella/issues/24","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/24/packages"}},{"old_version":"1.49.0","new_version":"1.60.0","update_type":"minor","path":"/frontend","pr_created_at":"2026-05-30T06:05:21.000Z","version_change":"1.49.0 → 1.60.0","issue":{"uuid":"4553500170","node_id":"PR_kwDOSpVeU87g5pkG","number":10,"state":"open","title":"chore(deps): bump the frontend-minor-and-patch group in /frontend with 5 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-30T06:05:21.000Z","updated_at":"2026-05-30T06:05:22.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"frontend-minor-and-patch","update_count":5,"packages":[{"name":"@tanstack/react-query","old_version":"5.62.0","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"next-themes","old_version":"0.3.0","new_version":"0.4.6","repository_url":"https://github.com/pacocoursey/next-themes"},{"name":"@playwright/test","old_version":"1.49.0","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tanstack/react-query-devtools","old_version":"5.62.0","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"openapi-typescript","old_version":"7.4.4","new_version":"7.13.0","repository_url":"https://github.com/openapi-ts/openapi-typescript"}],"path":"/frontend","ecosystem":"npm"},"body":"Bumps the frontend-minor-and-patch group in /frontend with 5 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.62.0` | `5.100.14` |\n| [next-themes](https://github.com/pacocoursey/next-themes) | `0.3.0` | `0.4.6` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.49.0` | `1.60.0` |\n| [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.62.0` | `5.100.14` |\n| [openapi-typescript](https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript) | `7.4.4` | `7.13.0` |\n\nUpdates `@tanstack/react-query` from 5.62.0 to 5.100.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\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/TanStack/query/blob/main/packages/react-query/CHANGELOG.md\"\u003e@​tanstack/react-query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/fcee7bdc429385ae8ffa224fa8a7a9ec7b8ee380\"\u003e\u003ccode\u003efcee7bd\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.8\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/ba6e7beebd50143408f01fcf5d9aee2ec1486f60\"\u003e\u003ccode\u003eba6e7be\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10767\"\u003e#10767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e fix(react): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10\"\u003e#10\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/05cf2bc0a4eae64959dc8a40152e2878190c971b\"\u003e\u003ccode\u003e05cf2bc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10758\"\u003e#10758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e fix(query-core): use built-in NoInfer for generic indexed-access types (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10593\"\u003e#10593\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/5ff4f6936bb66a64267eb4413430f956eecf7248\"\u003e\u003ccode\u003e5ff4f69\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10755\"\u003e#10755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query@5.100.14/packages/react-query\"\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 \u003ccode\u003e@​tanstack/react-query\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `next-themes` from 0.3.0 to 0.4.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pacocoursey/next-themes/releases\"\u003enext-themes's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: add null check for value in updateDOM function to prevent runtime errors and flashing by \u003ca href=\"https://github.com/groveom\"\u003e\u003ccode\u003e@​groveom\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/344\"\u003epacocoursey/next-themes#344\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/groveom\"\u003e\u003ccode\u003e@​groveom\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/344\"\u003epacocoursey/next-themes#344\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.4.5...v0.4.6\"\u003ehttps://github.com/pacocoursey/next-themes/compare/v0.4.5...v0.4.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev0.4.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: map theme to class using ValueObject in injected script by \u003ca href=\"https://github.com/danielgavrilov\"\u003e\u003ccode\u003e@​danielgavrilov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/330\"\u003epacocoursey/next-themes#330\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReduce number of renders by pre-setting resolvedTheme by \u003ca href=\"https://github.com/wahba-openai\"\u003e\u003ccode\u003e@​wahba-openai\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/338\"\u003epacocoursey/next-themes#338\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump next from 14.2.10 to 14.2.15 in the npm_and_yarn group across 1 directory by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/331\"\u003epacocoursey/next-themes#331\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump the npm_and_yarn group across 1 directory with 7 updates by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/341\"\u003epacocoursey/next-themes#341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: Fix corepack errors in CI by \u003ca href=\"https://github.com/pacocoursey\"\u003e\u003ccode\u003e@​pacocoursey\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/342\"\u003epacocoursey/next-themes#342\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/danielgavrilov\"\u003e\u003ccode\u003e@​danielgavrilov\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/330\"\u003epacocoursey/next-themes#330\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/wahba-openai\"\u003e\u003ccode\u003e@​wahba-openai\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/338\"\u003epacocoursey/next-themes#338\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.4.4...v0.4.5\"\u003ehttps://github.com/pacocoursey/next-themes/compare/v0.4.4...v0.4.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev0.4.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: infinite loop theme flicker by \u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/329\"\u003epacocoursey/next-themes#329\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/o1Suleyman\"\u003e\u003ccode\u003e@​o1Suleyman\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/328\"\u003epacocoursey/next-themes#328\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/329\"\u003epacocoursey/next-themes#329\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.4.3...v0.4.4\"\u003ehttps://github.com/pacocoursey/next-themes/compare/v0.4.3...v0.4.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev0.4.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePass \u003ccode\u003enonce\u003c/code\u003e to inline style tag when using \u003ccode\u003edisableTransitionOnChange\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.4.2...v0.4.3\"\u003ehttps://github.com/pacocoursey/next-themes/compare/v0.4.2...v0.4.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev0.4.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRe-export types from \u003ccode\u003enext-themes\u003c/code\u003e by \u003ca href=\"https://github.com/cschroeter\"\u003e\u003ccode\u003e@​cschroeter\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/321\"\u003epacocoursey/next-themes#321\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/cschroeter\"\u003e\u003ccode\u003e@​cschroeter\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/pull/321\"\u003epacocoursey/next-themes#321\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.4.1...v0.4.2\"\u003ehttps://github.com/pacocoursey/next-themes/compare/v0.4.1...v0.4.2\u003c/a\u003e\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/pacocoursey/next-themes/commit/3a43743798db3008a0fc59e8bcc9d6e1bb5d4752\"\u003e\u003ccode\u003e3a43743\u003c/code\u003e\u003c/a\u003e v0.4.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/f5be1b290f6532c25745ca9213a1ccf5ded11bb5\"\u003e\u003ccode\u003ef5be1b2\u003c/code\u003e\u003c/a\u003e fix: add null check for value in updateDOM function to prevent runtime errors...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/c178917c6b07f3c9b079914817b31af377e53369\"\u003e\u003ccode\u003ec178917\u003c/code\u003e\u003c/a\u003e v0.4.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/d12996b4e8a14ceb7c3f998fe91917cdedd872fe\"\u003e\u003ccode\u003ed12996b\u003c/code\u003e\u003c/a\u003e chore: Fix corepack errors in CI (\u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/issues/342\"\u003e#342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/b77db23e9fe5352c317d9c685d9f07fd7928faa9\"\u003e\u003ccode\u003eb77db23\u003c/code\u003e\u003c/a\u003e Bump the npm_and_yarn group across 1 directory with 7 updates (\u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/issues/341\"\u003e#341\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/d3fa4ee9ad21861105e6250248e68cc4a288cd16\"\u003e\u003ccode\u003ed3fa4ee\u003c/code\u003e\u003c/a\u003e Bump next from 14.2.10 to 14.2.15 in the npm_and_yarn group across 1 director...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/ad83567b11f551ac3decb846411be01f813a57bf\"\u003e\u003ccode\u003ead83567\u003c/code\u003e\u003c/a\u003e Reduce number of renders by pre-setting resolvedTheme (\u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/issues/338\"\u003e#338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/1b510445a37e7c2cddb359b5f29fe8dce9fd4855\"\u003e\u003ccode\u003e1b51044\u003c/code\u003e\u003c/a\u003e fix: map theme to class using ValueObject in injected script (\u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/issues/330\"\u003e#330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/57c0561b1fac95fab0a951adf1bc74f21e24c91c\"\u003e\u003ccode\u003e57c0561\u003c/code\u003e\u003c/a\u003e v0.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pacocoursey/next-themes/commit/ae2ab9b47ac85d4b7b830bd74dbe241778e498d8\"\u003e\u003ccode\u003eae2ab9b\u003c/code\u003e\u003c/a\u003e fix: infinite loop theme flicker (\u003ca href=\"https://redirect.github.com/pacocoursey/next-themes/issues/329\"\u003e#329\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pacocoursey/next-themes/compare/v0.3.0...v0.4.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.49.0 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.49.0...v1.60.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 \u003ccode\u003e@​playwright/test\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-query-devtools` from 5.62.0 to 5.100.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query-devtools's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\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/TanStack/query/blob/main/packages/react-query-devtools/CHANGELOG.md\"\u003e@​tanstack/react-query-devtools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/4d130b992d2ac396d75f921bfc530dd3a9d50577\"\u003e\u003ccode\u003e4d130b9\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/3d21cacdec3028b700c4c2e3e0ff8dbe7a235e8c\"\u003e\u003ccode\u003e3d21cac\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\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/TanStack/query/commit/ba6e7beebd50143408f01fcf5d9aee2ec1486f60\"\u003e\u003ccode\u003eba6e7be\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10767\"\u003e#10767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/05cf2bc0a4eae64959dc8a40152e2878190c971b\"\u003e\u003ccode\u003e05cf2bc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10758\"\u003e#10758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/5ff4f6936bb66a64267eb4413430f956eecf7248\"\u003e\u003ccode\u003e5ff4f69\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10755\"\u003e#10755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/03eba38ae9f9367022316d802d827a8460edcab7\"\u003e\u003ccode\u003e03eba38\u003c/code\u003e\u003c/a\u003e test(react-query-devtools): add tests for missing 'QueryClient', context prov...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3ae42619e5713b2fd6916760e84f7c9ddaa7a317\"\u003e\u003ccode\u003e3ae4261\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools/issues/10620\"\u003e#10620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query-devtools@5.100.14/packages/react-query-devtools\"\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 \u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openapi-typescript` from 7.4.4 to 7.13.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/releases\"\u003eopenapi-typescript's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eopenapi-typescript@7.13.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2549\"\u003e#2549\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/a690e526b7693479bc2f2f002d71a020fa5e4e16\"\u003e\u003ccode\u003ea690e52\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/abumalick\"\u003e\u003ccode\u003e@​abumalick\u003c/code\u003e\u003c/a\u003e! - Add readOnly/writeOnly support via \u003ccode\u003e--read-write-markers\u003c/code\u003e flag. When enabled, readOnly properties are wrapped with \u003ccode\u003e$Read\u0026lt;T\u0026gt;\u003c/code\u003e and writeOnly properties with \u003ccode\u003e$Write\u0026lt;T\u0026gt;\u003c/code\u003e. openapi-fetch uses \u003ccode\u003eReadable\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003eWritable\u0026lt;T\u0026gt;\u003c/code\u003e helpers to exclude these properties from responses and request bodies respectively.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.12.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2524\"\u003e#2524\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/697f7fe8bf3f23bfa36cb29c093a359b562a377e\"\u003e\u003ccode\u003e697f7fe\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gunnarvelle\"\u003e\u003ccode\u003e@​gunnarvelle\u003c/code\u003e\u003c/a\u003e! - Added flag to keep casing for exported root types\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2536\"\u003e#2536\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e3c05a40752b02fcabe63fda88d7e0afae00ab6d\"\u003e\u003ccode\u003ee3c05a4\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/darkbasic\"\u003e\u003ccode\u003e@​darkbasic\u003c/code\u003e\u003c/a\u003e! - Fix \u003ccode\u003eenumValues: true\u003c/code\u003e output for schemas that use \u003ccode\u003eoneOf\u003c/code\u003e/\u003ccode\u003eanyOf\u003c/code\u003e unions by narrowing union types with \u003ccode\u003eExtract\u0026lt;\u0026gt;\u003c/code\u003e before accessing variant-specific properties. This prevents invalid type paths when an accessed property only exists on some union members.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.10.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2480\"\u003e#2480\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e04dc65817a91eb7ceaea1992f0e674e5d885bb2\"\u003e\u003ccode\u003ee04dc65\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MatissJanis\"\u003e\u003ccode\u003e@​MatissJanis\u003c/code\u003e\u003c/a\u003e! - Fix multi-line jsdoc comments\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.10.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/openapi-ts/openapi-typescript/pull/2449\"\u003e#2449\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/bdd5ddb7d5f8463bd0515f0b2d5c98a8a394dabf\"\u003e\u003ccode\u003ebdd5ddb\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/kristianjf\"\u003e\u003ccode\u003e@​kristianjf\u003c/code\u003e\u003c/a\u003e! - Add transformProperty hook for property signature modification\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2288\"\u003e#2288\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/0f22be218f0c8050a96f35a6a271b959b2c5a23f\"\u003e\u003ccode\u003e0f22be2\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/hontas\"\u003e\u003ccode\u003e@​hontas\u003c/code\u003e\u003c/a\u003e! - Add support for patternProperties\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.9.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/openapi-ts/openapi-typescript/pull/2393\"\u003e#2393\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/6943ccf216f602f004eb178dd652ffcbafc05346\"\u003e\u003ccode\u003e6943ccf\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/simon-curtis\"\u003e\u003ccode\u003e@​simon-curtis\u003c/code\u003e\u003c/a\u003e! - Now checking for null \u0026amp; empty string when generating enum description\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2375\"\u003e#2375\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/5be22d7adc8bc36fdfa91f1aa3473919107060f2\"\u003e\u003ccode\u003e5be22d7\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ParkerVR\"\u003e\u003ccode\u003e@​ParkerVR\u003c/code\u003e\u003c/a\u003e! - Fix behavior when using enum and export-type flags\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.9.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2374\"\u003e#2374\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/c5ebbb8d5a0945c2360a2a147a3256d7e8585020\"\u003e\u003ccode\u003ec5ebbb8\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/cmlee-accelins\"\u003e\u003ccode\u003e@​cmlee-accelins\u003c/code\u003e\u003c/a\u003e! - Add JSDoc support for the recommended examples array on JSON Schema objects.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.8.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2310\"\u003e#2310\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e66b5ce63bfcdc57c6ee942e5ed4e7667e64c290\"\u003e\u003ccode\u003ee66b5ce\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/drwpow\"\u003e\u003ccode\u003e@​drwpow\u003c/code\u003e\u003c/a\u003e! - Build package with unbuild to improve CJS support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.7.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2185\"\u003e#2185\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/67889baf7832188f6589e0fb2e3d31a2e6ede257\"\u003e\u003ccode\u003e67889ba\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/duncanbeevers\"\u003e\u003ccode\u003e@​duncanbeevers\u003c/code\u003e\u003c/a\u003e! - Fix invalid $ref index into path\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eopenapi-typescript@7.7.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\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/openapi-ts/openapi-typescript/blob/main/packages/openapi-typescript/CHANGELOG.md\"\u003eopenapi-typescript's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.13.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2549\"\u003e#2549\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/a690e526b7693479bc2f2f002d71a020fa5e4e16\"\u003e\u003ccode\u003ea690e52\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/abumalick\"\u003e\u003ccode\u003e@​abumalick\u003c/code\u003e\u003c/a\u003e! - Add readOnly/writeOnly support via \u003ccode\u003e--read-write-markers\u003c/code\u003e flag. When enabled, readOnly properties are wrapped with \u003ccode\u003e$Read\u0026lt;T\u0026gt;\u003c/code\u003e and writeOnly properties with \u003ccode\u003e$Write\u0026lt;T\u0026gt;\u003c/code\u003e. openapi-fetch uses \u003ccode\u003eReadable\u0026lt;T\u0026gt;\u003c/code\u003e and \u003ccode\u003eWritable\u0026lt;T\u0026gt;\u003c/code\u003e helpers to exclude these properties from responses and request bodies respectively.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.12.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2524\"\u003e#2524\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/697f7fe8bf3f23bfa36cb29c093a359b562a377e\"\u003e\u003ccode\u003e697f7fe\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gunnarvelle\"\u003e\u003ccode\u003e@​gunnarvelle\u003c/code\u003e\u003c/a\u003e! - Added flag to keep casing for exported root types\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2536\"\u003e#2536\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e3c05a40752b02fcabe63fda88d7e0afae00ab6d\"\u003e\u003ccode\u003ee3c05a4\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/darkbasic\"\u003e\u003ccode\u003e@​darkbasic\u003c/code\u003e\u003c/a\u003e! - Fix \u003ccode\u003eenumValues: true\u003c/code\u003e output for schemas that use \u003ccode\u003eoneOf\u003c/code\u003e/\u003ccode\u003eanyOf\u003c/code\u003e unions by narrowing union types with \u003ccode\u003eExtract\u0026lt;\u0026gt;\u003c/code\u003e before accessing variant-specific properties. This prevents invalid type paths when an accessed property only exists on some union members.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.11.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2433\"\u003e#2433\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/27c9370911b50a981d146fa5c561b90d66dd2c0d\"\u003e\u003ccode\u003e27c9370\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/danitt\"\u003e\u003ccode\u003e@​danitt\u003c/code\u003e\u003c/a\u003e! - Conditionally generate TS enums\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.10.2\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/openapi-ts/openapi-typescript/pull/2139\"\u003e#2139\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/12f9c29b7653db3ab5d6beb4ac698ce5b58177aa\"\u003e\u003ccode\u003e12f9c29\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/darkbasic\"\u003e\u003ccode\u003e@​darkbasic\u003c/code\u003e\u003c/a\u003e! - All kinds of enum related fixes (enums in arrays, in optional props, in unions, in request body, with record types...)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2548\"\u003e#2548\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/438559038baa931144768f186e8825f9e84cdb85\"\u003e\u003ccode\u003e4385590\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/mynnx\"\u003e\u003ccode\u003e@​mynnx\u003c/code\u003e\u003c/a\u003e! - Fixes the \u003ccode\u003e--redocly\u003c/code\u003e flag so that it no longer hangs and is able to lookup the Redocly file at a custom path\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.10.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2480\"\u003e#2480\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e04dc65817a91eb7ceaea1992f0e674e5d885bb2\"\u003e\u003ccode\u003ee04dc65\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MatissJanis\"\u003e\u003ccode\u003e@​MatissJanis\u003c/code\u003e\u003c/a\u003e! - Fix multi-line jsdoc comments\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.10.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/openapi-ts/openapi-typescript/pull/2449\"\u003e#2449\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/bdd5ddb7d5f8463bd0515f0b2d5c98a8a394dabf\"\u003e\u003ccode\u003ebdd5ddb\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/kristianjf\"\u003e\u003ccode\u003e@​kristianjf\u003c/code\u003e\u003c/a\u003e! - Add transformProperty hook for property signature modification\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2288\"\u003e#2288\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/0f22be218f0c8050a96f35a6a271b959b2c5a23f\"\u003e\u003ccode\u003e0f22be2\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/hontas\"\u003e\u003ccode\u003e@​hontas\u003c/code\u003e\u003c/a\u003e! - Add support for patternProperties\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.9.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/openapi-ts/openapi-typescript/pull/2393\"\u003e#2393\u003c/a\u003e \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/6943ccf216f602f004eb178dd652ffcbafc05346\"\u003e\u003ccode\u003e6943ccf\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/simon-curtis\"\u003e\u003ccode\u003e@​simon-curtis\u003c/code\u003e\u003c/a\u003e! - Now checking for null \u0026amp; empty string when generating enum description\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/openapi-ts/openapi-typescript/commit/5709d33a5977c4908b9e331f01cd0f9e181b1c37\"\u003e\u003ccode\u003e5709d33\u003c/code\u003e\u003c/a\u003e [ci] release (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2611\"\u003e#2611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/a690e526b7693479bc2f2f002d71a020fa5e4e16\"\u003e\u003ccode\u003ea690e52\u003c/code\u003e\u003c/a\u003e feat(openapi-typescript): add readOnly/writeOnly support via markers (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2549\"\u003e#2549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/79a443bebbd63cb4e07a9cc5dda7cc90dd181e3b\"\u003e\u003ccode\u003e79a443b\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency vite-node to v5 (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2602\"\u003e#2602\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/5ca83697f3e307d76edbd42e192f2bfad956012a\"\u003e\u003ccode\u003e5ca8369\u003c/code\u003e\u003c/a\u003e [ci] release (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2603\"\u003e#2603\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/47ba213c9092bf67a5c67be70ef2bf01e521c012\"\u003e\u003ccode\u003e47ba213\u003c/code\u003e\u003c/a\u003e ci: fix npm publish permissions (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2601\"\u003e#2601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/697f7fe8bf3f23bfa36cb29c093a359b562a377e\"\u003e\u003ccode\u003e697f7fe\u003c/code\u003e\u003c/a\u003e Keep casing for schema types exported to root (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2524\"\u003e#2524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/e3c05a40752b02fcabe63fda88d7e0afae00ab6d\"\u003e\u003ccode\u003ee3c05a4\u003c/code\u003e\u003c/a\u003e fix(openapi-typescript): enumValues generates valid TypeScript for oneOf/anyO...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/746c35f3c88464ac0ff3a6c8d8036f62374bc635\"\u003e\u003ccode\u003e746c35f\u003c/code\u003e\u003c/a\u003e [ci] release (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2598\"\u003e#2598\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/27c9370911b50a981d146fa5c561b90d66dd2c0d\"\u003e\u003ccode\u003e27c9370\u003c/code\u003e\u003c/a\u003e support conditional ts enums (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2433\"\u003e#2433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commit/7635787ecb752dbfb1336bab08e1d56e1bb18ad9\"\u003e\u003ccode\u003e7635787\u003c/code\u003e\u003c/a\u003e [ci] release (\u003ca href=\"https://github.com/openapi-ts/openapi-typescript/tree/HEAD/packages/openapi-typescript/issues/2504\"\u003e#2504\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/openapi-ts/openapi-typescript/commits/openapi-typescript@7.13.0/packages/openapi-typescript\"\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 openapi-typescript since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/Shamseer1988/Employee-Housing-Control-Portal/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Shamseer1988%2FEmployee-Housing-Control-Portal/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"}},{"old_version":"1.58.2","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-30T04:02:37.000Z","version_change":"1.58.2 → 1.60.0","issue":{"uuid":"4553131846","node_id":"PR_kwDOSr7V_s7g4dXw","number":6,"state":"open","title":"Bump @playwright/test from 1.58.2 to 1.60.0","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-30T04:02:37.000Z","updated_at":"2026-05-30T04:02:37.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.58.2 to 1.60.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@playwright/test\u0026package-manager=npm_and_yarn\u0026previous-version=1.58.2\u0026new-version=1.60.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/ednmendoza/saas-cost-dashboard/pull/6","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ednmendoza%2Fsaas-cost-dashboard/issues/6","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/6/packages"}},{"old_version":"1.59.1","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-30T00:25:11.000Z","version_change":"1.59.1 → 1.60.0","issue":{"uuid":"4552457195","node_id":"PR_kwDOR_X7Ws7g2R6o","number":73,"state":"open","title":"chore(deps): bump the minor-and-patch group across 1 directory with 23 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-30T00:25:11.000Z","updated_at":"2026-05-30T00:26:04.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"minor-and-patch","update_count":23,"packages":[{"name":"@biomejs/biome","old_version":"2.4.13","new_version":"2.4.16","repository_url":"https://github.com/biomejs/biome"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"compound-agent","old_version":"2.7.2","new_version":"2.8.0","repository_url":"https://github.com/Nathandela/compound-agent"},{"name":"dependency-cruiser","old_version":"17.3.10","new_version":"17.4.3","repository_url":"https://github.com/sverweij/dependency-cruiser"},{"name":"@base-ui/react","old_version":"1.4.1","new_version":"1.5.0","repository_url":"https://github.com/mui/base-ui"},{"name":"@tanstack/react-query","old_version":"5.100.7","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-virtual","old_version":"3.13.24","new_version":"3.13.26","repository_url":"https://github.com/TanStack/virtual"},{"name":"date-fns","old_version":"4.1.0","new_version":"4.4.0","repository_url":"https://github.com/date-fns/date-fns"},{"name":"lucide-react","old_version":"1.14.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"react","old_version":"19.2.5","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":"react-dom","old_version":"19.2.5","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-router","old_version":"7.14.2","new_version":"7.16.0","repository_url":"https://github.com/remix-run/react-router"},{"name":"tailwind-merge","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"@tailwindcss/vite","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"tailwindcss","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"vite","old_version":"8.0.10","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vitest","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"mysql2","old_version":"3.22.3","new_version":"3.22.4","repository_url":"https://github.com/sidorares/node-mysql2"},{"name":"tsx","old_version":"4.21.0","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"},{"name":"zod","old_version":"4.4.1","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@astrojs/starlight","old_version":"0.38.4","new_version":"0.39.2","repository_url":"https://github.com/withastro/starlight"},{"name":"astro","old_version":"6.2.1","new_version":"6.4.2","repository_url":"https://github.com/withastro/astro"}],"path":null,"ecosystem":"npm"},"body":"Bumps the minor-and-patch group with 23 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.13` | `2.4.16` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [compound-agent](https://github.com/Nathandela/compound-agent) | `2.7.2` | `2.8.0` |\n| [dependency-cruiser](https://github.com/sverweij/dependency-cruiser) | `17.3.10` | `17.4.3` |\n| [@base-ui/react](https://github.com/mui/base-ui/tree/HEAD/packages/react) | `1.4.1` | `1.5.0` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.100.7` | `5.100.14` |\n| [@tanstack/react-virtual](https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual) | `3.13.24` | `3.13.26` |\n| [date-fns](https://github.com/date-fns/date-fns) | `4.1.0` | `4.4.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.14.0` | `1.17.0` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.5` | `19.2.6` |\n| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.2.14` | `19.2.15` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.5` | `19.2.6` |\n| [react-router](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router) | `7.14.2` | `7.16.0` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.4` | `4.3.0` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.4` | `4.3.0` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.10` | `8.0.14` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.5` | `4.1.7` |\n| [mysql2](https://github.com/sidorares/node-mysql2) | `3.22.3` | `3.22.4` |\n| [tsx](https://github.com/privatenumber/tsx) | `4.21.0` | `4.22.3` |\n| [zod](https://github.com/colinhacks/zod) | `4.4.1` | `4.4.3` |\n| [@astrojs/starlight](https://github.com/withastro/starlight/tree/HEAD/packages/starlight) | `0.38.4` | `0.39.2` |\n| [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) | `6.2.1` | `6.4.2` |\n\n\nUpdates `@biomejs/biome` from 2.4.13 to 2.4.16\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.16\u003c/h2\u003e\n\u003ch2\u003e2.4.16\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/10329\"\u003e#10329\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ef764d51b9f5be18ec5a4f9b4dce732512e5d805\"\u003e\u003ccode\u003eef764d5\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed an issue where diagnostics showed an incorrect location in Astro files.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10363\"\u003e#10363\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/50aa4157599a1ac5c77c13bce81f5c87240beff0\"\u003e\u003ccode\u003e50aa415\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed HTML formatting for a case where comments could cause the formatter to split up a closing tag, which would cause the resulting HTML to be syntactically invalid.\u003c/p\u003e\n\u003cp\u003eInput:\u003c/p\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;span\n  \u0026gt;\u0026lt;!-- 1\n--\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 2\n--\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 3\n--\u0026gt;\u0026lt;/span\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOutput:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e  \u0026lt;span\n\t  \u0026gt;\u0026lt;!-- 1\n- --\u0026gt; \u0026lt;span\u0026gt;a\u0026lt;/span\u0026lt;!-- 2\n- --\u0026gt; \u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n+ --\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\u0026gt;\u0026lt;!-- 2\n+ --\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n  --\u0026gt;\u0026lt;/span\n  \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/10465\"\u003e#10465\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/0c718da81770f47d65845bc1a006f99512d9359b\"\u003e\u003ccode\u003e0c718da\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dfedoryshchev\"\u003e\u003ccode\u003e@​dfedoryshchev\u003c/code\u003e\u003c/a\u003e! - Fixed diagnostics emitted by the \u003ccode\u003enoUntrustedLicenses\u003c/code\u003e rule.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10358\"\u003e#10358\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/05c26176573534a0abfa92d454d244f9569bc77d\"\u003e\u003ccode\u003e05c2617\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10356\"\u003e#10356\u003c/a\u003e: \u003ccode\u003ebiome rage --linter\u003c/code\u003e now displays rules enabled through linter domains in the enabled rules list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10300\"\u003e#10300\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/950247c389e693c16b47d61d8ef0f1b85d1a1b02\"\u003e\u003ccode\u003e950247c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10265\"\u003e#10265\u003c/a\u003e: Svelte function bindings such as \u003ccode\u003ebind:value={get, set}\u003c/code\u003e are now parsed more precisely, so \u003ca href=\"https://biomejs.dev/linter/rules/no-comma-operator/\"\u003e\u003ccode\u003enoCommaOperator\u003c/code\u003e\u003c/a\u003e won't emit false positives for that syntax anymore.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9786\"\u003e#9786\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MeGaNeKoS\"\u003e\u003ccode\u003e@​MeGaNeKoS\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/8480\"\u003e#8480\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/use-destructuring/\"\u003e\u003ccode\u003euseDestructuring\u003c/code\u003e\u003c/a\u003e now provides \u003ccode\u003evariableDeclarator\u003c/code\u003e and \u003ccode\u003eassignmentExpression\u003c/code\u003e options to control which contexts enforce destructuring, matching ESLint's \u003ccode\u003eprefer-destructuring\u003c/code\u003e configuration. Both default to \u003ccode\u003e{array: true, object: true}\u003c/code\u003e. The diagnostic for object destructuring in assignment expressions now instructs users to wrap the assignment in parentheses.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10425\"\u003e#10425\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1948b7242e092ed0cfcf501ef6f119202b8ea93b\"\u003e\u003ccode\u003e1948b72\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/sjh9714\"\u003e\u003ccode\u003e@​sjh9714\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10244\"\u003e#10244\u003c/a\u003e: The \u003ccode\u003euseOptionalChain\u003c/code\u003e rule now detects negated guard inequality chains like \u003ccode\u003e!foo || foo.bar !== \u0026quot;x\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10442\"\u003e#10442\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/001f94f696d9baca3c231d39895a01d4dd528d52\"\u003e\u003ccode\u003e001f94f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ematipico\"\u003e\u003ccode\u003e@​ematipico\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10411\"\u003e#10411\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/no-misused-promises/\"\u003e\u003ccode\u003enoMisusedPromises\u003c/code\u003e\u003c/a\u003e no longer causes a stack overflow when a nested function returns an object with shorthand properties that shadow destructured variables from an outer scope.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10318\"\u003e#10318\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added support for \u003ccode\u003eformatter.trailingCommas\u003c/code\u003e in overrides. This option was previously available in the top-level formatter configuration but missing from formatter overrides.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10319\"\u003e#10319\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/2e3770923f9fb4e33606113e726014f7b63730d0\"\u003e\u003ccode\u003e2e37709\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed Vue and Svelte formatting for standalone interpolations in inline elements. Biome now preserves existing newlines in cases like:\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/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.16\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/10329\"\u003e#10329\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/ef764d51b9f5be18ec5a4f9b4dce732512e5d805\"\u003e\u003ccode\u003eef764d5\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Conaclos\"\u003e\u003ccode\u003e@​Conaclos\u003c/code\u003e\u003c/a\u003e! - Fixed an issue where diagnostics showed an incorrect location in Astro files.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10363\"\u003e#10363\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/50aa4157599a1ac5c77c13bce81f5c87240beff0\"\u003e\u003ccode\u003e50aa415\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed HTML formatting for a case where comments could cause the formatter to split up a closing tag, which would cause the resulting HTML to be syntactically invalid.\u003c/p\u003e\n\u003cp\u003eInput:\u003c/p\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;span\n  \u0026gt;\u0026lt;!-- 1\n--\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 2\n--\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\n  \u0026gt;\u0026lt;!-- 3\n--\u0026gt;\u0026lt;/span\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOutput:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e  \u0026lt;span\n\t  \u0026gt;\u0026lt;!-- 1\n- --\u0026gt; \u0026lt;span\u0026gt;a\u0026lt;/span\u0026lt;!-- 2\n- --\u0026gt; \u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n+ --\u0026gt;\u0026lt;span\u0026gt;a\u0026lt;/span\u0026gt;\u0026lt;!-- 2\n+ --\u0026gt;\u0026lt;span\u0026gt;b\u0026lt;/span\u0026gt;\u0026lt;!-- 3\n  --\u0026gt;\u0026lt;/span\n  \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/10465\"\u003e#10465\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/0c718da81770f47d65845bc1a006f99512d9359b\"\u003e\u003ccode\u003e0c718da\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dfedoryshchev\"\u003e\u003ccode\u003e@​dfedoryshchev\u003c/code\u003e\u003c/a\u003e! - Fixed diagnostics emitted by the \u003ccode\u003enoUntrustedLicenses\u003c/code\u003e rule.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10358\"\u003e#10358\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/05c26176573534a0abfa92d454d244f9569bc77d\"\u003e\u003ccode\u003e05c2617\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10356\"\u003e#10356\u003c/a\u003e: \u003ccode\u003ebiome rage --linter\u003c/code\u003e now displays rules enabled through linter domains in the enabled rules list.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10300\"\u003e#10300\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/950247c389e693c16b47d61d8ef0f1b85d1a1b02\"\u003e\u003ccode\u003e950247c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10265\"\u003e#10265\u003c/a\u003e: Svelte function bindings such as \u003ccode\u003ebind:value={get, set}\u003c/code\u003e are now parsed more precisely, so \u003ca href=\"https://biomejs.dev/linter/rules/no-comma-operator/\"\u003e\u003ccode\u003enoCommaOperator\u003c/code\u003e\u003c/a\u003e won't emit false positives for that syntax anymore.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/9786\"\u003e#9786\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/MeGaNeKoS\"\u003e\u003ccode\u003e@​MeGaNeKoS\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/8480\"\u003e#8480\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/use-destructuring/\"\u003e\u003ccode\u003euseDestructuring\u003c/code\u003e\u003c/a\u003e now provides \u003ccode\u003evariableDeclarator\u003c/code\u003e and \u003ccode\u003eassignmentExpression\u003c/code\u003e options to control which contexts enforce destructuring, matching ESLint's \u003ccode\u003eprefer-destructuring\u003c/code\u003e configuration. Both default to \u003ccode\u003e{array: true, object: true}\u003c/code\u003e. The diagnostic for object destructuring in assignment expressions now instructs users to wrap the assignment in parentheses.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10425\"\u003e#10425\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/1948b7242e092ed0cfcf501ef6f119202b8ea93b\"\u003e\u003ccode\u003e1948b72\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/sjh9714\"\u003e\u003ccode\u003e@​sjh9714\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10244\"\u003e#10244\u003c/a\u003e: The \u003ccode\u003euseOptionalChain\u003c/code\u003e rule now detects negated guard inequality chains like \u003ccode\u003e!foo || foo.bar !== \u0026quot;x\u0026quot;\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10442\"\u003e#10442\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/001f94f696d9baca3c231d39895a01d4dd528d52\"\u003e\u003ccode\u003e001f94f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ematipico\"\u003e\u003ccode\u003e@​ematipico\u003c/code\u003e\u003c/a\u003e! - Fixed \u003ca href=\"https://redirect.github.com/biomejs/biome/issues/10411\"\u003e#10411\u003c/a\u003e: \u003ca href=\"https://biomejs.dev/linter/rules/no-misused-promises/\"\u003e\u003ccode\u003enoMisusedPromises\u003c/code\u003e\u003c/a\u003e no longer causes a stack overflow when a nested function returns an object with shorthand properties that shadow destructured variables from an outer scope.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10318\"\u003e#10318\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Added support for \u003ccode\u003eformatter.trailingCommas\u003c/code\u003e in overrides. This option was previously available in the top-level formatter configuration but missing from formatter overrides.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/biomejs/biome/pull/10319\"\u003e#10319\u003c/a\u003e \u003ca href=\"https://github.com/biomejs/biome/commit/2e3770923f9fb4e33606113e726014f7b63730d0\"\u003e\u003ccode\u003e2e37709\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dyc3\"\u003e\u003ccode\u003e@​dyc3\u003c/code\u003e\u003c/a\u003e! - Fixed Vue and Svelte formatting for standalone interpolations in inline elements. Biome now preserves existing newlines in cases like:\u003c/p\u003e\n\u003cpre lang=\"diff\"\u003e\u003ccode\u003e\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/5f4ea56b1dfb00d839af218e3c6484154073a7eb\"\u003e\u003ccode\u003e5f4ea56\u003c/code\u003e\u003c/a\u003e ci: release (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10326\"\u003e#10326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/de2a33ce8be86b696742f3adee35a66dc9fa943b\"\u003e\u003ccode\u003ede2a33c\u003c/code\u003e\u003c/a\u003e fix(core): regression in emitted types (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10478\"\u003e#10478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/d835303700f27f8f362a186a0dddc7995117daf9\"\u003e\u003ccode\u003ed835303\u003c/code\u003e\u003c/a\u003e docs: remove redundant default phrase in \u003ccode\u003euseConsistentObjectDefinitions\u003c/code\u003e rul...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/4f1aaf2f833d5963dd150836836be6bc68212d68\"\u003e\u003ccode\u003e4f1aaf2\u003c/code\u003e\u003c/a\u003e fix: incorrect build when using build or test (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10426\"\u003e#10426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/dc73b6baa55606ec7b6aa9229564b1c142116f2b\"\u003e\u003ccode\u003edc73b6b\u003c/code\u003e\u003c/a\u003e refactor: make plugins opt-in via feature gate (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10418\"\u003e#10418\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/e71f58490f3121432d1bc24ae5330ecf96391a40\"\u003e\u003ccode\u003ee71f584\u003c/code\u003e\u003c/a\u003e feat(useDestructuring): add options for assignment/declaration and improve di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/biomejs/biome/commit/9b1577fa400279d9b0222cbc920cfa9ddcf1c9d6\"\u003e\u003ccode\u003e9b1577f\u003c/code\u003e\u003c/a\u003e fix(config): support trailingCommas in overrides (\u003ca href=\"https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome/issues/10318\"\u003e#10318\u003c/a\u003e)\u003c/li\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\u003eAdditional commits viewable in \u003ca href=\"https://github.com/biomejs/biome/commits/@biomejs/biome@2.4.16/packages/@biomejs/biome\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `compound-agent` from 2.7.2 to 2.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Nathandela/compound-agent/releases\"\u003ecompound-agent's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.8.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Nathandela/compound-agent/compare/v2.7.2...v2.8.0\"\u003ehttps://github.com/Nathandela/compound-agent/compare/v2.7.2...v2.8.0\u003c/a\u003e\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/Nathandela/compound-agent/blob/main/CHANGELOG.md\"\u003ecompound-agent's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[2.8.0] - 2026-05-17\u003c/h2\u003e\n\u003ch3\u003eUpgrading (action required for the default path)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eca loop\u003c/code\u003e / \u003ccode\u003eca polish\u003c/code\u003e now default to the \u003ccode\u003eclaude --bg\u003c/code\u003e backend. The bg\nbackend \u003cstrong\u003efails loud (exit 1) at startup\u003c/strong\u003e unless \u003cstrong\u003eboth\u003c/strong\u003e operator\nprerequisites are met: (1) the \u003ccode\u003e--dangerously-skip-permissions\u003c/code\u003e bypass\ndisclaimer is accepted on the machine, and (2) Claude's\n\u003ccode\u003eworktree.bgIsolation\u003c/code\u003e setting is \u003ccode\u003enone\u003c/code\u003e. If you cannot set these, pin the\nlegacy behavior with \u003ccode\u003e--backend p\u003c/code\u003e (or \u003ccode\u003eCA_BACKEND=p\u003c/code\u003e) — that path is\nbyte-for-byte unchanged.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDefault loop/polish/review backend is now \u003ccode\u003eclaude --bg\u003c/code\u003e (subscription-billed)\u003c/strong\u003e: \u003ccode\u003eca loop\u003c/code\u003e and \u003ccode\u003eca polish\u003c/code\u003e default to the bg backend (\u003ccode\u003eclaude --bg\u003c/code\u003e). The legacy \u003ccode\u003eclaude -p\u003c/code\u003e path remains fully supported via \u003ccode\u003e--backend p\u003c/code\u003e or \u003ccode\u003eCA_BACKEND=p\u003c/code\u003e. Precedence: explicit \u003ccode\u003e--backend\u003c/code\u003e flag \u0026gt; \u003ccode\u003eCA_BACKEND\u003c/code\u003e env \u0026gt; default (bg). The bg backend runs sessions as background jobs polled via \u003ccode\u003estate.json\u003c/code\u003e, auto-isolates each session into a git worktree (harvested before cleanup), and uses the existing \u003ccode\u003eEPIC_COMPLETE\u003c/code\u003e/\u003ccode\u003eHUMAN_REQUIRED:\u003c/code\u003e/\u003ccode\u003eEPIC_FAILED\u003c/code\u003e protocol unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003e--backend bg|p\u003c/code\u003e flag added to \u003ccode\u003eca loop\u003c/code\u003e and \u003ccode\u003eca polish\u003c/code\u003e\u003c/strong\u003e: Explicit backend selection. Default is \u003ccode\u003ebg\u003c/code\u003e. \u003ccode\u003e--backend p\u003c/code\u003e restores the legacy \u003ccode\u003eclaude -p\u003c/code\u003e streaming pipeline byte-for-byte.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eBootstrap preflight added to bg-backend scripts\u003c/strong\u003e: Generated scripts with \u003ccode\u003e--backend bg\u003c/code\u003e (or default) now run a \u003ccode\u003ebootstrap_preflight\u003c/code\u003e step before the epic loop starts. It enforces two operator prerequisites and fails loud (exit 1, remediation) if either is missing: (1) the \u003ccode\u003e--dangerously-skip-permissions\u003c/code\u003e bypass disclaimer must be accepted on the machine; (2) Claude's \u003ccode\u003eworktree.bgIsolation\u003c/code\u003e setting must be \u003ccode\u003enone\u003c/code\u003e — otherwise \u003ccode\u003ebd\u003c/code\u003e (keyed to the main repo path) is unreachable from the worktree \u003ccode\u003eclaude --bg\u003c/code\u003e auto-isolates into, so epics never close and the polish architect's \u003ccode\u003ebd\u003c/code\u003e writes are lost. The \u003ccode\u003ebgIsolation\u003c/code\u003e check tries \u003ccode\u003eclaude config get worktree.bgIsolation\u003c/code\u003e first and falls back to the settings-JSON precedence (\u003ccode\u003e.claude/settings.local.json\u003c/code\u003e → project \u003ccode\u003e.claude/settings.json\u003c/code\u003e → \u003ccode\u003e~/.claude/settings.json\u003c/code\u003e); it errs toward failing loud when it cannot confirm \u003ccode\u003enone\u003c/code\u003e. Both checks are skipped entirely for \u003ccode\u003e--backend p\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ePolish architect runs synchronously regardless of backend\u003c/strong\u003e: the polish architect (which only runs \u003ccode\u003ebd create --type=epic\u003c/code\u003e / \u003ccode\u003ebd dep add\u003c/code\u003e and makes no code edits) always uses the synchronous \u003ccode\u003eagent_invoke\u003c/code\u003e path even under \u003ccode\u003eCA_BACKEND=bg\u003c/code\u003e, so its \u003ccode\u003ebd\u003c/code\u003e epic writes reach the main-tree Dolt instead of a discarded bg worktree. The reviewer fleet is unaffected and is still bg-dispatched.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWorktree harvest\u003c/strong\u003e: with the bg backend, each \u003ccode\u003eclaude --bg\u003c/code\u003e session auto-isolates into a git worktree (\u003ccode\u003eworktree-\u0026lt;name\u0026gt;\u003c/code\u003e branch). After terminal state, the loop merges the worktree into the working branch before \u003ccode\u003eclaude rm\u003c/code\u003e. \u003ccode\u003eclaude rm\u003c/code\u003e runs only when worktree safety is positively verified. On harvest failure (merge conflict, ambiguous worktrees, non-success marker) \u003cstrong\u003eor when the pre-dispatch worktree snapshot is missing\u003c/strong\u003e (worktree safety unverifiable), the worktree is retained, the epic is marked \u003ccode\u003eHUMAN_REQUIRED\u003c/code\u003e, and \u003ccode\u003eclaude rm\u003c/code\u003e is skipped to preserve work — a missing snapshot is treated as unverifiable, never as \u0026quot;safe to remove\u0026quot;.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eca watch\u003c/code\u003e bg data source\u003c/strong\u003e: \u003ccode\u003eca watch\u003c/code\u003e follows the \u003ccode\u003e.latest\u003c/code\u003e symlink updated by the harvest/collect step to a trace file in \u003ccode\u003e.compound-agent/agent_logs/\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ePolish inner-loop backend propagation\u003c/strong\u003e: the polish loop now propagates \u003ccode\u003eCA_BACKEND\u003c/code\u003e to the inner infinity loop via \u003ccode\u003eCA_BACKEND=\u0026quot;${CA_BACKEND:-bg}\u0026quot; bash \u0026quot;$inner_script\u0026quot;\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eImprove loop (\u003ccode\u003eca improve\u003c/code\u003e, \u003ccode\u003eca loop --improve\u003c/code\u003e, \u003ccode\u003eca watch --improve\u003c/code\u003e)\u003c/strong\u003e: Removed the improve loop command and all associated flags and shell-script plumbing. The feature is superseded; this removal is unrelated to the bg backend migration.\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/Nathandela/compound-agent/commit/2f312df18a6c3b9aa77218806eed9fbf7f3cf110\"\u003e\u003ccode\u003e2f312df\u003c/code\u003e\u003c/a\u003e test(bg): eliminate flake in bg-seam runtime tests under parallel load\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/e22d001667276867697b451aed47f278c30683c2\"\u003e\u003ccode\u003ee22d001\u003c/code\u003e\u003c/a\u003e release: prep v2.8.0 -- claude --bg default backend + 4 P1 review fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/72563940886860a0a3ae89b57b529d7c04b1f783\"\u003e\u003ccode\u003e7256394\u003c/code\u003e\u003c/a\u003e Merge feat/bg-backend-migration: claude -p -\u0026gt; claude --bg seam + 4 P1 review ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/52af7083d653e124227768d854230fb38c1f5d11\"\u003e\u003ccode\u003e52af708\u003c/code\u003e\u003c/a\u003e fix(bg): resolve 4 P1 defects from independent dual review\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/0f8cf9446188711a35199ce94d79b11208047529\"\u003e\u003ccode\u003e0f8cf94\u003c/code\u003e\u003c/a\u003e compound(bg-migration): capture cycle lessons (epic learning_agent-3bkj)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/9f121ccb7b7d7b1ce79c846aacca45e4958b8a75\"\u003e\u003ccode\u003e9f121cc\u003c/code\u003e\u003c/a\u003e fix(loop): Phase-4 P1s — loop-seam agent_invoke bg) case + polish inner-loop ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/29102dc3611b5c4ebd7e5326b8b580a0bb6abf22\"\u003e\u003ccode\u003e29102dc\u003c/code\u003e\u003c/a\u003e feat(loop): cutover - --backend flag, default bg, bootstrap preflight, docs (T6)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/6c5b3616a8393e837d47bcadb0f704d60c43f51f\"\u003e\u003ccode\u003e6c5b361\u003c/code\u003e\u003c/a\u003e feat(loop): review/polish bg session-resume + mixed-fleet barrier + inner-loo...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/a2fa5ae920e763bd2a19a059905f8754c728fcfd\"\u003e\u003ccode\u003ea2fa5ae\u003c/code\u003e\u003c/a\u003e feat(loop): bg watchdog kill-ladder + bg-aware cleanup_orphans + ca watch (T4)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Nathandela/compound-agent/commit/143a420cc01d8a8f24722cb908ee15a5c967d1d7\"\u003e\u003ccode\u003e143a420\u003c/code\u003e\u003c/a\u003e feat(loop): bg worktree-harvest + harvest-fail safety (T3)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Nathandela/compound-agent/compare/v2.7.2...v2.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dependency-cruiser` from 17.3.10 to 17.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sverweij/dependency-cruiser/releases\"\u003edependency-cruiser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev17.4.3\u003c/h2\u003e\n\u003ch2\u003e👷 maintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efbea056c build(npm): updates external dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.4.2\u003c/h2\u003e\n\u003ch2\u003e📖 documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eae0fcd40 doc: corrects typos\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e👷 maintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eccef0faf chore(npm): sets ignore-scripts on ci\u003c/li\u003e\n\u003cli\u003eca1fe64a chore(npm): makes publishing staged only\u003c/li\u003e\n\u003cli\u003ed4dad0e9/ 1d1bc84a/ ca1fe64a build(npm): updates external dependencies\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev17.4.1\u003c/h2\u003e\n\u003cp\u003eThis release was created on github, but not published to npmjs\u003c/p\u003e\n\u003ch2\u003ev17.4.0\u003c/h2\u003e\n\u003ch2\u003e✨ features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eaf08fc4e feat(init): adds basic consistency check for typescript \u0026amp; babel features against transpiler availability (\u003ca href=\"https://redirect.github.com/sverweij/dependency-cruiser/issues/1057\"\u003e#1057\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e74ce6904 feat(report): adds configuration option for err-* and markdown reporters to show unresolved module names in the to-part of violations (\u003ca href=\"https://redirect.github.com/sverweij/dependency-cruiser/issues/1056\"\u003e#1056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e3b620f28 feat(analyze): enriches violations with the unresolved module name and the dependency types (\u003ca href=\"https://redirect.github.com/sverweij/dependency-cruiser/issues/1055\"\u003e#1055\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e👷 maintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eb333e0d3/ 1abe8808 build(npm): updates external dependencies\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/sverweij/dependency-cruiser/commit/2584d9e13418d000c587390bacb534352605f8e3\"\u003e\u003ccode\u003e2584d9e\u003c/code\u003e\u003c/a\u003e 17.4.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/fbea056c8337fa560fa17d336c078b49b34f5752\"\u003e\u003ccode\u003efbea056\u003c/code\u003e\u003c/a\u003e build(npm): updates external dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/643462527f7a57ebf0ebc6277b4f47e4cf5180ab\"\u003e\u003ccode\u003e6434625\u003c/code\u003e\u003c/a\u003e 17.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/17595296667bdf8fb0c352042621dd84dce7f4b2\"\u003e\u003ccode\u003e1759529\u003c/code\u003e\u003c/a\u003e chore(ci): simplifies release flow again\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/56e501fd13e44fad8377997edf183f6930f6afa9\"\u003e\u003ccode\u003e56e501f\u003c/code\u003e\u003c/a\u003e 17.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/ccef0fafbb4f7ef740f74477a97c2b7bc54606ca\"\u003e\u003ccode\u003eccef0fa\u003c/code\u003e\u003c/a\u003e chore(npm): sets ignore-scripts on ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/ca1fe64a4eef04e7a9177fd7c70ddf73ce0a903c\"\u003e\u003ccode\u003eca1fe64\u003c/code\u003e\u003c/a\u003e chore(npm): makes publishing staged only\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/b5b2c36b0bd0120f949ac1d0b7e74babeca3f8c5\"\u003e\u003ccode\u003eb5b2c36\u003c/code\u003e\u003c/a\u003e build(npm): updates external dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/1d1bc84a22d1020c275b9e6408096bac1ac795bb\"\u003e\u003ccode\u003e1d1bc84\u003c/code\u003e\u003c/a\u003e build(npm): updates external dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sverweij/dependency-cruiser/commit/ae0fcd40b90ecf03be2b471b7608c602d744fd58\"\u003e\u003ccode\u003eae0fcd4\u003c/code\u003e\u003c/a\u003e doc: corrects typos\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sverweij/dependency-cruiser/compare/v17.3.10...v17.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@base-ui/react` from 1.4.1 to 1.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mui/base-ui/releases\"\u003e@​base-ui/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.5.0\u003c/h2\u003e\n\u003ch3\u003eGeneral changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove mount performance with interaction splitting, including closed popup mount performance by up to 50% and unmounting performance by up to 85% (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4661\"\u003e#4661\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse local document for virtual arrow (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4662\"\u003e#4662\u003c/a\u003e) by \u003ca href=\"https://github.com/lyzno1\"\u003e\u003ccode\u003e@​lyzno1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix macOS Safari and Firefox minimizing fullscreen when closing popups with \u003c!-- raw HTML omitted --\u003eEsc\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4695\"\u003e#4695\u003c/a\u003e) by \u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop unnecessary memoization (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4693\"\u003e#4693\u003c/a\u003e) by \u003ca href=\"https://github.com/flaviendelangle\"\u003e\u003ccode\u003e@​flaviendelangle\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not use \u003ccode\u003eMath.random()\u003c/code\u003e in \u003ccode\u003euseStableCallback()\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4732\"\u003e#4732\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix return focus when reference disconnects (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4655\"\u003e#4655\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't steal initial focus if focus already moved inside a popup (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4775\"\u003e#4775\u003c/a\u003e) by \u003ca href=\"https://github.com/stefee\"\u003e\u003ccode\u003e@​stefee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAlert Dialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAutocomplete\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix native \u003ccode\u003eFormData\u003c/code\u003e for popup inputs (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4725\"\u003e#4725\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCheckbox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSubmit the associated form when pressing \u003c!-- raw HTML omitted --\u003eEnter\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4713\"\u003e#4713\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCombobox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpose clear visibility state (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4664\"\u003e#4664\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix popup input form submit (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4687\"\u003e#4687\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve \u003ccode\u003ecloseQuery\u003c/code\u003e when closing multiple input-inside-popup combobox (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4715\"\u003e#4715\u003c/a\u003e) by \u003ca href=\"https://github.com/mj12albert\"\u003e\u003ccode\u003e@​mj12albert\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore hidden-input changes while readonly or disabled (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4810\"\u003e#4810\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eConsider the controlled \u003ccode\u003eopen\u003c/code\u003e prop for open state detection (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4712\"\u003e#4712\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDrawer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eForward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eField\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eForm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMenu\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix submenu pointer-events scope for \u003ccode\u003ekeepMounted\u003c/code\u003e portals (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4723\"\u003e#4723\u003c/a\u003e) by \u003ca href=\"https://github.com/twillhorn\"\u003e\u003ccode\u003e@​twillhorn\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/mui/base-ui/blob/master/CHANGELOG.md\"\u003e@​base-ui/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.5.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003eMay 19, 2026\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eGeneral changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove mount performance with interaction splitting, including closed popup mount performance by up to 50% and unmounting performance by up to 85% (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4661\"\u003e#4661\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse local document for virtual arrow (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4662\"\u003e#4662\u003c/a\u003e) by \u003ca href=\"https://github.com/lyzno1\"\u003e\u003ccode\u003e@​lyzno1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix macOS Safari and Firefox minimizing fullscreen when closing popups with \u003c!-- raw HTML omitted --\u003eEsc\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4695\"\u003e#4695\u003c/a\u003e) by \u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop unnecessary memoization (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4693\"\u003e#4693\u003c/a\u003e) by \u003ca href=\"https://github.com/flaviendelangle\"\u003e\u003ccode\u003e@​flaviendelangle\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not use \u003ccode\u003eMath.random()\u003c/code\u003e in \u003ccode\u003euseStableCallback()\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4732\"\u003e#4732\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix return focus when reference disconnects (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4655\"\u003e#4655\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't steal initial focus if focus already moved inside a popup (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4775\"\u003e#4775\u003c/a\u003e) by \u003ca href=\"https://github.com/stefee\"\u003e\u003ccode\u003e@​stefee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAlert Dialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAutocomplete\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix native \u003ccode\u003eFormData\u003c/code\u003e for popup inputs (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4725\"\u003e#4725\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCheckbox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSubmit the associated form when pressing \u003c!-- raw HTML omitted --\u003eEnter\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4713\"\u003e#4713\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCombobox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpose clear visibility state (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4664\"\u003e#4664\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix popup input form submit (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4687\"\u003e#4687\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve \u003ccode\u003ecloseQuery\u003c/code\u003e when closing multiple input-inside-popup combobox (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4715\"\u003e#4715\u003c/a\u003e) by \u003ca href=\"https://github.com/mj12albert\"\u003e\u003ccode\u003e@​mj12albert\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore hidden-input changes while readonly or disabled (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4810\"\u003e#4810\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eConsider the controlled \u003ccode\u003eopen\u003c/code\u003e prop for open state detection (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4712\"\u003e#4712\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDrawer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eForward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eField\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eForm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\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/mui/base-ui/commit/2fdf1b06f2b8b25bf86124bf6c8810a6aa2352a8\"\u003e\u003ccode\u003e2fdf1b0\u003c/code\u003e\u003c/a\u003e [release] v1.5.0 (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4850\"\u003e#4850\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/8535638e9ac36330fd711bd3a3e81ee6898d9468\"\u003e\u003ccode\u003e8535638\u003c/code\u003e\u003c/a\u003e [otp field] Fix vertical arrow slot navigation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4844\"\u003e#4844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/09ce83bfa512300511b690bd30c5a08877d319d9\"\u003e\u003ccode\u003e09ce83b\u003c/code\u003e\u003c/a\u003e [alert dialog] Fix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/5e0f3e73e43e9552cab72318dcbcee70ecfa3abe\"\u003e\u003ccode\u003e5e0f3e7\u003c/code\u003e\u003c/a\u003e [menu] Support group labels in radio groups (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4826\"\u003e#4826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/8db1aa95e52c6a0f687232f638ba0f753f03d53d\"\u003e\u003ccode\u003e8db1aa9\u003c/code\u003e\u003c/a\u003e [otp field] Fix RTL arrow navigation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4847\"\u003e#4847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/ccb4b307586b6549930bd6da30fd2cdcc8b45526\"\u003e\u003ccode\u003eccb4b30\u003c/code\u003e\u003c/a\u003e [otp field] Compose \u003ccode\u003enormalizeValue\u003c/code\u003e with validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4717\"\u003e#4717\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/ad99b44c38e4d044d6a8f40ff9b90d55160a9bbd\"\u003e\u003ccode\u003ead99b44\u003c/code\u003e\u003c/a\u003e [direction provider] Fix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/5579e7f8518c5fb97d2fd977d6d978aa988f46c0\"\u003e\u003ccode\u003e5579e7f\u003c/code\u003e\u003c/a\u003e [drawer] Forward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\\\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/81703365122b88f8ccf25a14587c0e58e8b0ee70\"\u003e\u003ccode\u003e8170336\u003c/code\u003e\u003c/a\u003e [navigation menu] Fix \u003ccode\u003ekeepMounted\u003c/code\u003e content sizing (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4817\"\u003e#4817\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/4a339d027ca09cbddc19da134d9bcc5d75388fee\"\u003e\u003ccode\u003e4a339d0\u003c/code\u003e\u003c/a\u003e [otp field] Prevent locked hidden autofill validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4827\"\u003e#4827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mui/base-ui/commits/v1.5.0/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-query` from 5.100.7 to 5.100.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\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/TanStack/query/blob/main/packages/react-query/CHANGELOG.md\"\u003e@​tanstack/react-query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/fcee7bdc429385ae8ffa224fa8a7a9ec7b8ee380\"\u003e\u003ccode\u003efcee7bd\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.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/TanStack/query/commit/ba6e7beebd50143408f01fcf5d9aee2ec1486f60\"\u003e\u003ccode\u003eba6e7be\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10767\"\u003e#10767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e fix(react): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10\"\u003e#10\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/05cf2bc0a4eae64959dc8a40152e2878190c971b\"\u003e\u003ccode\u003e05cf2bc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10758\"\u003e#10758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e fix(query-core): use built-in NoInfer for generic indexed-access types (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10593\"\u003e#10593\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/5ff4f6936bb66a64267eb4413430f956eecf7248\"\u003e\u003ccode\u003e5ff4f69\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10755\"\u003e#10755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query@5.100.14/packages/react-query\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-virtual` from 3.13.24 to 3.13.26\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/virtual/releases\"\u003e@​tanstack/react-virtual's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-virtual\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.13.26\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.16.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-virtual\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.13.25\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace the \u003ccode\u003euseReducer(() =\u0026gt; ({}), {})\u003c/code\u003e force-rerender pattern with an (\u003ca href=\"https://redirect.github.com/TanStack/virtual/pull/1168\"\u003e#1168\u003c/a\u003e)\nincrementing number counter. Same semantics (every dispatch changes the\nreducer state, forcing a render); zero per-dispatch object allocation.\nTrivial individual cost, but eliminates one steady-state GC source on\nscroll-heavy apps.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.15.0\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/TanStack/virtual/blob/main/packages/react-virtual/CHANGELOG.md\"\u003e@​tanstack/react-virtual's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.13.26\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.16.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.13.25\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReplace the \u003ccode\u003euseReducer(() =\u0026gt; ({}), {})\u003c/code\u003e force-rerender pattern with an (\u003ca href=\"https://redirect.github.com/TanStack/virtual/pull/1168\"\u003e#1168\u003c/a\u003e)\nincrementing number counter. Same semantics (every dispatch changes the\nreducer state, forcing a render); zero per-dispatch object allocation.\nTrivial individual cost, but eliminates one steady-state GC source on\nscroll-heavy apps.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/virtual-core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.15.0\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/TanStack/virtual/commit/693d915e0670cbba5c3e42d0d2a46f085dd7d44e\"\u003e\u003ccode\u003e693d915\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/fc992ab00a15166311b79bd7580736cf01e8cc1a\"\u003e\u003ccode\u003efc992ab\u003c/code\u003e\u003c/a\u003e feat: support end-anchored virtualizers (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/949180be8adf66ea8428b326db72ebad42d5b4c3\"\u003e\u003ccode\u003e949180b\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/99355ad1eceee6270efaa26e51f535d8d7c31ac2\"\u003e\u003ccode\u003e99355ad\u003c/code\u003e\u003c/a\u003e perf: virtual-core rewrite for mount/measure-storm, plus iOS Safari handling ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/virtual/commit/3374977c623cd95eb4cdb44ad44eb94677d65c1e\"\u003e\u003ccode\u003e3374977\u003c/code\u003e\u003c/a\u003e chore(angular-virtual)!: upgrade Angular to v19 (\u003ca href=\"https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/TanStack/virtual/commits/@tanstack/react-virtual@3.13.26/packages/react-virtual\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `date-fns` from 4.1.0 to 4.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/date-fns/date-fns/releases\"\u003edate-fns's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.0\u003c/h2\u003e\n\u003cp\u003eThis release revisits the approach to CDN usage and introduces a new package, \u003ccode\u003e@date-fns/cdn\u003c/code\u003e and deprecates the \u003ccode\u003edate-fns\u003c/code\u003e CDN scripts. It allowed reducing the zipped package size from \u003ccode\u003e5.83 MB\u003c/code\u003e down to \u003ccode\u003e3.96 MB\u003c/code\u003e without introducing any breaking changes.\u003c/p\u003e\n\u003cp\u003eIn \u003ccode\u003ev5.0.0-alpha.0\u003c/code\u003e where CDN scripts are completely removed from \u003ccode\u003edate-fns\u003c/code\u003e the change is more significant and brings the zipped package size down to \u003ccode\u003e2.89 MB\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eIt is just the first step in optimizing the package size. Expect further size reduction in the future v4 and v5 versions.\u003c/p\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eDEPRECATED\u003c/strong\u003e: The \u003ccode\u003edate-fns\u003c/code\u003e CDN scripts are now deprecated and will be removed in the next major release. Please switch to the new \u003ccode\u003e@date-fns/cdn\u003c/code\u003e package for CDN usage.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved CDN source maps to reduce the package size. If you rely on them, please switch to the new \u003ccode\u003e@date-fns/cdn\u003c/code\u003e package that still includes them.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003cp\u003eKudos to \u003ca href=\"https://github.com/ImRodry\"\u003e\u003ccode\u003e@​ImRodry\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/puneetdixit200\"\u003e\u003ccode\u003e@​puneetdixit200\u003c/code\u003e\u003c/a\u003e for their contributions.\u003c/p\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed missing modularized optimization fallback (\u003ca href=\"https://x.com/kossnocorp/status/1731181274579325260\"\u003efor Next.js and others\u003c/a\u003e). See \u003ca href=\"https://x.com/kossnocorp/status/1731181274579325260\"\u003e#4193\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003ept\u003c/code\u003e locale first day of week to be Sunday. See \u003ca href=\"https://redirect.github.com/date-fns/date-fns/pull/4195\"\u003e#4195\u003c/a\u003e by \u003ca href=\"https://github.com/ImRodry\"\u003e\u003ccode\u003e@​ImRodry\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003ezh-CN\u003c/code\u003e, \u003ccode\u003ezh-HK\u003c/code\u003e, and \u003ccode\u003ezh-TW\u003c/code\u003e locale month parsing for October, November, and December. See \u003ca href=\"https://redirect.github.com/date-fns/date-fns/pull/4194\"\u003e#4194\u003c/a\u003e by \u003ca href=\"https://github.com/puneetdixit200\"\u003e\u003ccode\u003e@​puneetdixit200\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed type definitions missing in v4.2.0 due to TypeScript misconfiguration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.0\u003c/h2\u003e\n\u003cp\u003eThis is a minor release in all senses, it only includes documentation updates (first of many) that points to the new \u003ca href=\"https://date-fns.org/you-dont-need-date-fns\"\u003eYou Don't Need date-fns*\u003c/a\u003e page.\u003c/p\u003e\n\u003cp\u003e* Not really\u003c/p\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded Temporal API references to the JSDoc annotations of \u003ccode\u003eadd\u003c/code\u003e, \u003ccode\u003eaddBusinessDays\u003c/code\u003e, and \u003ccode\u003eaddDays\u003c/code\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/date-fns/date-fns/commit/cd53d2538cfa318404eff7ade6449b49bf34562e\"\u003e\u003ccode\u003ecd53d25\u003c/code\u003e\u003c/a\u003e Promote to v4.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/d948ec151d395096de8a45fbcd9b1e79c26fda25\"\u003e\u003ccode\u003ed948ec1\u003c/code\u003e\u003c/a\u003e Preserve but deprecate CDN versions for v4, set up v5 with polyfills\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/ee65753cfc5d73cc9acd43aaa8012b3b233ddf32\"\u003e\u003ccode\u003eee65753\u003c/code\u003e\u003c/a\u003e Add root \u003ccode\u003emise :format\u003c/code\u003e task\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/9f5bdf5d5a944772aa9668c4fa6567d89ca01fa9\"\u003e\u003ccode\u003e9f5bdf5\u003c/code\u003e\u003c/a\u003e Add positional argument to \u003ccode\u003etest/smoke.sh\u003c/code\u003e script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/651ead6faf331515814803faf457f5b9db7c9729\"\u003e\u003ccode\u003e651ead6\u003c/code\u003e\u003c/a\u003e Split CDN bundles into separate \u003ccode\u003e@​date-fns/cdn\u003c/code\u003e package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/224c1a209967dad359a2c2adc9a5b0ef72e4fe7b\"\u003e\u003ccode\u003e224c1a2\u003c/code\u003e\u003c/a\u003e Deprecate type tests as attw hangs on date-fns package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/date-fns/date-fns/commit/7bb2842dac3d...\n\n_Description has been truncated_","html_url":"https://github.com/htxryan/pearl/pull/73","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/htxryan%2Fpearl/issues/73","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/73/packages"}},{"old_version":"1.59.1","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-29T23:22:16.000Z","version_change":"1.59.1 → 1.60.0","issue":{"uuid":"4552214647","node_id":"PR_kwDOSrzLCc7g1hCm","number":10,"state":"closed","title":"chore(deps-dev): bump the npm-development-dependencies group with 4 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-29T23:25:47.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T23:22:16.000Z","updated_at":"2026-05-29T23:25:56.000Z","time_to_close":211,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"npm-development-dependencies","update_count":4,"packages":[{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@vitest/coverage-v8","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"vitest","old_version":"4.1.5","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"tsx","old_version":"4.21.0","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm-development-dependencies group with 4 updates: [@playwright/test](https://github.com/microsoft/playwright), [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8), [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) and [tsx](https://github.com/privatenumber/tsx).\n\nUpdates `@playwright/test` from 1.59.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.59.1...v1.60.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.5 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\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 `vitest` from 4.1.5 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\u003ch2\u003ev4.1.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e  -  by \u003ca href=\"https://github.com/macarie\"\u003e\u003ccode\u003e@​macarie\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10138\"\u003evitest-dev/vitest#10138\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607c\"\u003e\u003c!-- raw HTML omitted --\u003e(31882)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGlobal \u003ccode\u003esequence.concurrent: true\u003c/code\u003e with top-level \u003ccode\u003etest(..., { concurrent: false })\u003c/code\u003e + depreacte \u003ccode\u003esequential\u003c/code\u003e test API and options  -  by \u003ca href=\"https://github.com/hi-ogawa\"\u003e\u003ccode\u003e@​hi-ogawa\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eCodex\u003c/strong\u003e and \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10196\"\u003evitest-dev/vitest#10196\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/2847dfa2a\"\u003e\u003c!-- raw HTML omitted --\u003e(2847d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ebrowser\u003c/strong\u003e: Simplify orchestrator otel carrier  -  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/10285\"\u003evitest-dev/vitest#10285\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee\"\u003e\u003c!-- raw HTML omitted --\u003e(18af9)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🏎 Performance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStringify diff objects only once  -  by \u003ca href=\"https://github.com/sheremet-va\"\u003e\u003ccode\u003e@​sheremet-va\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vitest-dev/vitest/issues/10276\"\u003evitest-dev/vitest#10276\u003c/a\u003e \u003ca href=\"https://github.com/vitest-dev/vitest/commit/9f7b1528c\"\u003e\u003c!-- raw HTML omitted --\u003e(9f7b1)\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.5...v4.1.6\"\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\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/a8fd24c1cad2320b19fcc651413c7d928423bdc1\"\u003e\u003ccode\u003ea8fd24c\u003c/code\u003e\u003c/a\u003e chore: release v4.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/18af98cee1830604d57f6a02bf28f8067cdffc06\"\u003e\u003ccode\u003e18af98c\u003c/code\u003e\u003c/a\u003e fix(browser): simplify orchestrator otel carrier (\u003ca href=\"https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10285\"\u003e#10285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitest-dev/vitest/commit/31882607cc67c7bf52ead13a606321ffdb06a857\"\u003e\u003ccode\u003e3188260\u003c/code\u003e\u003c/a\u003e feat(browser): provide project reference in \u003ccode\u003eToMatchScreenshotResolvePath\u003c/code\u003e (#...\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 `tsx` from 4.21.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\u003ch2\u003ev4.22.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/privatenumber/tsx/compare/v4.21.1...v4.22.0\"\u003e4.22.0\u003c/a\u003e (2026-05-14)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade esbuild to 0.28 (\u003ca href=\"https://redirect.github.com/privatenumber/tsx/issues/789\"\u003e#789\u003c/a\u003e) (\u003ca href=\"https://github.com/privatenumber/tsx/commit/b29f6ee4d6872fdef474eb0a89c6d4e982478a77\"\u003eb29f6ee\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.0\"\u003e\u003ccode\u003enpm package (@​latest dist-tag)\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/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.21.0...v4.22.3\"\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 tsx since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/lilyzhaun/llm-pulse/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/lilyzhaun%2Fllm-pulse/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"}},{"old_version":"1.59.1","new_version":"1.60.0","update_type":"minor","path":"/apps/web","pr_created_at":"2026-05-29T20:09:17.000Z","version_change":"1.59.1 → 1.60.0","issue":{"uuid":"4551314046","node_id":"PR_kwDOSDwG3M7gymWS","number":12,"state":"closed","title":"chore(deps): Bump the minor-and-patch group in /apps/web with 22 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":"2026-05-29T21:06:36.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T20:09:17.000Z","updated_at":"2026-05-29T21:10:11.000Z","time_to_close":3439,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): Bump","group_name":"minor-and-patch","update_count":22,"packages":[{"name":"@base-ui/react","old_version":"1.4.0","new_version":"1.5.0","repository_url":"https://github.com/mui/base-ui"},{"name":"@hookform/resolvers","old_version":"5.2.2","new_version":"5.4.0","repository_url":"https://github.com/react-hook-form/resolvers"},{"name":"@openfeature/core","old_version":"1.9.2","new_version":"1.10.0","repository_url":"https://github.com/open-feature/js-sdk"},{"name":"@openfeature/web-sdk","old_version":"1.7.3","new_version":"1.8.0","repository_url":"https://github.com/open-feature/js-sdk"},{"name":"@sentry/nextjs","old_version":"10.49.0","new_version":"10.55.0","repository_url":"https://github.com/getsentry/sentry-javascript"},{"name":"@tanstack/react-query","old_version":"5.99.0","new_version":"5.100.14","repository_url":"https://github.com/TanStack/query"},{"name":"dashjs","old_version":"5.1.1","new_version":"5.2.0","repository_url":"https://github.com/Dash-Industry-Forum/dash.js"},{"name":"isomorphic-dompurify","old_version":"3.8.0","new_version":"3.15.0","repository_url":"https://github.com/kkomelin/isomorphic-dompurify"},{"name":"lucide-react","old_version":"1.8.0","new_version":"1.17.0","repository_url":"https://github.com/lucide-icons/lucide"},{"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":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-hook-form","old_version":"7.72.1","new_version":"7.76.1","repository_url":"https://github.com/react-hook-form/react-hook-form"},{"name":"shadcn","old_version":"4.2.0","new_version":"4.8.3","repository_url":"https://github.com/shadcn-ui/ui"},{"name":"tailwind-merge","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"zustand","old_version":"5.0.12","new_version":"5.0.14","repository_url":"https://github.com/pmndrs/zustand"},{"name":"@axe-core/playwright","old_version":"4.11.1","new_version":"4.11.3","repository_url":"https://github.com/dequelabs/axe-core-npm"},{"name":"@axe-core/react","old_version":"4.11.1","new_version":"4.11.3","repository_url":"https://github.com/dequelabs/axe-core-npm"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"eslint-config-next","old_version":"16.2.3","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"tsx","old_version":"4.21.0","new_version":"4.22.3","repository_url":"https://github.com/privatenumber/tsx"}],"path":"/apps/web","ecosystem":"npm"},"body":"Bumps the minor-and-patch group in /apps/web with 22 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@base-ui/react](https://github.com/mui/base-ui/tree/HEAD/packages/react) | `1.4.0` | `1.5.0` |\n| [@hookform/resolvers](https://github.com/react-hook-form/resolvers) | `5.2.2` | `5.4.0` |\n| [@openfeature/core](https://github.com/open-feature/js-sdk) | `1.9.2` | `1.10.0` |\n| [@openfeature/web-sdk](https://github.com/open-feature/js-sdk) | `1.7.3` | `1.8.0` |\n| [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) | `10.49.0` | `10.55.0` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.99.0` | `5.100.14` |\n| [dashjs](https://github.com/Dash-Industry-Forum/dash.js) | `5.1.1` | `5.2.0` |\n| [isomorphic-dompurify](https://github.com/kkomelin/isomorphic-dompurify) | `3.8.0` | `3.15.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.8.0` | `1.17.0` |\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| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-hook-form](https://github.com/react-hook-form/react-hook-form) | `7.72.1` | `7.76.1` |\n| [shadcn](https://github.com/shadcn-ui/ui/tree/HEAD/packages/shadcn) | `4.2.0` | `4.8.3` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [zustand](https://github.com/pmndrs/zustand) | `5.0.12` | `5.0.14` |\n| [@axe-core/playwright](https://github.com/dequelabs/axe-core-npm) | `4.11.1` | `4.11.3` |\n| [@axe-core/react](https://github.com/dequelabs/axe-core-npm) | `4.11.1` | `4.11.3` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.2.3` | `16.2.6` |\n| [tsx](https://github.com/privatenumber/tsx) | `4.21.0` | `4.22.3` |\n\nUpdates `@base-ui/react` from 1.4.0 to 1.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mui/base-ui/releases\"\u003e@​base-ui/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.5.0\u003c/h2\u003e\n\u003ch3\u003eGeneral changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove mount performance with interaction splitting, including closed popup mount performance by up to 50% and unmounting performance by up to 85% (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4661\"\u003e#4661\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse local document for virtual arrow (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4662\"\u003e#4662\u003c/a\u003e) by \u003ca href=\"https://github.com/lyzno1\"\u003e\u003ccode\u003e@​lyzno1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix macOS Safari and Firefox minimizing fullscreen when closing popups with \u003c!-- raw HTML omitted --\u003eEsc\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4695\"\u003e#4695\u003c/a\u003e) by \u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop unnecessary memoization (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4693\"\u003e#4693\u003c/a\u003e) by \u003ca href=\"https://github.com/flaviendelangle\"\u003e\u003ccode\u003e@​flaviendelangle\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not use \u003ccode\u003eMath.random()\u003c/code\u003e in \u003ccode\u003euseStableCallback()\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4732\"\u003e#4732\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix return focus when reference disconnects (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4655\"\u003e#4655\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't steal initial focus if focus already moved inside a popup (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4775\"\u003e#4775\u003c/a\u003e) by \u003ca href=\"https://github.com/stefee\"\u003e\u003ccode\u003e@​stefee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAlert Dialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAutocomplete\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix native \u003ccode\u003eFormData\u003c/code\u003e for popup inputs (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4725\"\u003e#4725\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCheckbox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSubmit the associated form when pressing \u003c!-- raw HTML omitted --\u003eEnter\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4713\"\u003e#4713\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCombobox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpose clear visibility state (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4664\"\u003e#4664\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix popup input form submit (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4687\"\u003e#4687\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve \u003ccode\u003ecloseQuery\u003c/code\u003e when closing multiple input-inside-popup combobox (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4715\"\u003e#4715\u003c/a\u003e) by \u003ca href=\"https://github.com/mj12albert\"\u003e\u003ccode\u003e@​mj12albert\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore hidden-input changes while readonly or disabled (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4810\"\u003e#4810\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eConsider the controlled \u003ccode\u003eopen\u003c/code\u003e prop for open state detection (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4712\"\u003e#4712\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDrawer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eForward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eField\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eForm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMenu\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix submenu pointer-events scope for \u003ccode\u003ekeepMounted\u003c/code\u003e portals (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4723\"\u003e#4723\u003c/a\u003e) by \u003ca href=\"https://github.com/twillhorn\"\u003e\u003ccode\u003e@​twillhorn\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/mui/base-ui/blob/master/CHANGELOG.md\"\u003e@​base-ui/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.5.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003eMay 19, 2026\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eGeneral changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove mount performance with interaction splitting, including closed popup mount performance by up to 50% and unmounting performance by up to 85% (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4661\"\u003e#4661\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse local document for virtual arrow (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4662\"\u003e#4662\u003c/a\u003e) by \u003ca href=\"https://github.com/lyzno1\"\u003e\u003ccode\u003e@​lyzno1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix macOS Safari and Firefox minimizing fullscreen when closing popups with \u003c!-- raw HTML omitted --\u003eEsc\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4695\"\u003e#4695\u003c/a\u003e) by \u003ca href=\"https://github.com/arturbien\"\u003e\u003ccode\u003e@​arturbien\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop unnecessary memoization (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4693\"\u003e#4693\u003c/a\u003e) by \u003ca href=\"https://github.com/flaviendelangle\"\u003e\u003ccode\u003e@​flaviendelangle\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDo not use \u003ccode\u003eMath.random()\u003c/code\u003e in \u003ccode\u003euseStableCallback()\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4732\"\u003e#4732\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix return focus when reference disconnects (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4655\"\u003e#4655\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDon't steal initial focus if focus already moved inside a popup (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4775\"\u003e#4775\u003c/a\u003e) by \u003ca href=\"https://github.com/stefee\"\u003e\u003ccode\u003e@​stefee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAlert Dialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAutocomplete\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix native \u003ccode\u003eFormData\u003c/code\u003e for popup inputs (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4725\"\u003e#4725\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCheckbox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSubmit the associated form when pressing \u003c!-- raw HTML omitted --\u003eEnter\u003c!-- raw HTML omitted --\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4713\"\u003e#4713\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCombobox\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpose clear visibility state (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4664\"\u003e#4664\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix popup input form submit (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4687\"\u003e#4687\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve \u003ccode\u003ecloseQuery\u003c/code\u003e when closing multiple input-inside-popup combobox (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4715\"\u003e#4715\u003c/a\u003e) by \u003ca href=\"https://github.com/mj12albert\"\u003e\u003ccode\u003e@​mj12albert\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIgnore hidden-input changes while readonly or disabled (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4810\"\u003e#4810\u003c/a\u003e) by \u003ca href=\"https://github.com/lunaxislu\"\u003e\u003ccode\u003e@​lunaxislu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDialog\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eConsider the controlled \u003ccode\u003eopen\u003c/code\u003e prop for open state detection (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4712\"\u003e#4712\u003c/a\u003e) by \u003ca href=\"https://github.com/michaldudak\"\u003e\u003ccode\u003e@​michaldudak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDrawer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eForward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eField\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eForm\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid \u003ccode\u003eflushSync\u003c/code\u003e during validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4685\"\u003e#4685\u003c/a\u003e) by \u003ca href=\"https://github.com/atomiks\"\u003e\u003ccode\u003e@​atomiks\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/mui/base-ui/commit/2fdf1b06f2b8b25bf86124bf6c8810a6aa2352a8\"\u003e\u003ccode\u003e2fdf1b0\u003c/code\u003e\u003c/a\u003e [release] v1.5.0 (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4850\"\u003e#4850\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/8535638e9ac36330fd711bd3a3e81ee6898d9468\"\u003e\u003ccode\u003e8535638\u003c/code\u003e\u003c/a\u003e [otp field] Fix vertical arrow slot navigation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4844\"\u003e#4844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/09ce83bfa512300511b690bd30c5a08877d319d9\"\u003e\u003ccode\u003e09ce83b\u003c/code\u003e\u003c/a\u003e [alert dialog] Fix handle defaults (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4834\"\u003e#4834\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/5e0f3e73e43e9552cab72318dcbcee70ecfa3abe\"\u003e\u003ccode\u003e5e0f3e7\u003c/code\u003e\u003c/a\u003e [menu] Support group labels in radio groups (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4826\"\u003e#4826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/8db1aa95e52c6a0f687232f638ba0f753f03d53d\"\u003e\u003ccode\u003e8db1aa9\u003c/code\u003e\u003c/a\u003e [otp field] Fix RTL arrow navigation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4847\"\u003e#4847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/ccb4b307586b6549930bd6da30fd2cdcc8b45526\"\u003e\u003ccode\u003eccb4b30\u003c/code\u003e\u003c/a\u003e [otp field] Compose \u003ccode\u003enormalizeValue\u003c/code\u003e with validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4717\"\u003e#4717\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/ad99b44c38e4d044d6a8f40ff9b90d55160a9bbd\"\u003e\u003ccode\u003ead99b44\u003c/code\u003e\u003c/a\u003e [direction provider] Fix RTL component behavior (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4840\"\u003e#4840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/5579e7f8518c5fb97d2fd977d6d978aa988f46c0\"\u003e\u003ccode\u003e5579e7f\u003c/code\u003e\u003c/a\u003e [drawer] Forward \u003ccode\u003estyle\u003c/code\u003e prop in \u003ccode\u003e\\\u0026lt;Drawer.Viewport\u0026gt;\u003c/code\u003e (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4841\"\u003e#4841\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/81703365122b88f8ccf25a14587c0e58e8b0ee70\"\u003e\u003ccode\u003e8170336\u003c/code\u003e\u003c/a\u003e [navigation menu] Fix \u003ccode\u003ekeepMounted\u003c/code\u003e content sizing (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4817\"\u003e#4817\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mui/base-ui/commit/4a339d027ca09cbddc19da134d9bcc5d75388fee\"\u003e\u003ccode\u003e4a339d0\u003c/code\u003e\u003c/a\u003e [otp field] Prevent locked hidden autofill validation (\u003ca href=\"https://github.com/mui/base-ui/tree/HEAD/packages/react/issues/4827\"\u003e#4827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mui/base-ui/commits/v1.5.0/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@hookform/resolvers` from 5.2.2 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/react-hook-form/resolvers/releases\"\u003e@​hookform/resolvers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.4.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/compare/v5.3.0...v5.4.0\"\u003e5.4.0\u003c/a\u003e (2026-05-21)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat: add ata-validator resolver (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/845\"\u003e#845\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix issue with toNestErrors.ts (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/848\"\u003e#848\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cul\u003e\n\u003cli\u003eadd guidance on passing context to \u003ccode\u003eyupResolver\u003c/code\u003e (useForm context) (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/835\"\u003e#835\u003c/a\u003e)  (\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/3d2992472adf5735b46b175e22bea82fddf13854\"\u003e3d29924\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/react-hook-form/resolvers/commit/3d2992472adf5735b46b175e22bea82fddf13854\"\u003e\u003ccode\u003e3d29924\u003c/code\u003e\u003c/a\u003e feat: add guidance on passing context to \u003ccode\u003eyupResolver\u003c/code\u003e (useForm context) (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/835\"\u003e#835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/56b68f3798612601190a533887847d8fef2c94af\"\u003e\u003ccode\u003e56b68f3\u003c/code\u003e\u003c/a\u003e feat: 5.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/cf8562d88ce3a1658676b2ef996347f29e05b3ee\"\u003e\u003ccode\u003ecf8562d\u003c/code\u003e\u003c/a\u003e update readme on ata-validator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/5e5b6103692fa599ddacca39a03bf707e73a5012\"\u003e\u003ccode\u003e5e5b610\u003c/code\u003e\u003c/a\u003e fix issue with toNestErrors.ts (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/848\"\u003e#848\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/72aacf8604d697a29a1859f8bffccf18adb86add\"\u003e\u003ccode\u003e72aacf8\u003c/code\u003e\u003c/a\u003e Revise supported versions in SECURITY.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/ad89a20d869f2dc21b905168c5578b3522c01b64\"\u003e\u003ccode\u003ead89a20\u003c/code\u003e\u003c/a\u003e feat: add ata-validator resolver (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/845\"\u003e#845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/02286db88310fd23e1de61ad880c23e210801813\"\u003e\u003ccode\u003e02286db\u003c/code\u003e\u003c/a\u003e ci: updated publish workflow to use node 24 (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/838\"\u003e#838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/react-hook-form/resolvers/commit/2e9bc7c7d02506d336e20d8c0bae0c479f3662ec\"\u003e\u003ccode\u003e2e9bc7c\u003c/code\u003e\u003c/a\u003e Fix(zodResolver): error paths in complex unions \u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/787\"\u003e#787\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/react-hook-form/resolvers/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/react-hook-form/resolvers/compare/v5.2.2...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@openfeature/core` from 1.9.2 to 1.10.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/open-feature/js-sdk/releases\"\u003e@​openfeature/core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecore: v1.10.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/compare/core-v1.9.2...core-v1.10.0\"\u003e1.10.0\u003c/a\u003e (2026-04-21)\u003c/h2\u003e\n\u003ch3\u003e✨ New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u0026quot;sideEffects\u0026quot;: false to package.json files for all packages (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1343\"\u003e#1343\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/d8e968ed2513fe986a6500895f3399303a2f0b96\"\u003ed8e968e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport type-safe flag keys via module augmentation (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1349\"\u003e#1349\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/fb2ed4a7d64d9b8437975a0ef6cb4fe6a12dd671\"\u003efb2ed4a\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/open-feature/js-sdk/commit/54acc8a49544aecf7633e3e0af793e3d7daeaffc\"\u003e\u003ccode\u003e54acc8a\u003c/code\u003e\u003c/a\u003e chore(main): release core 1.10.0 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1392\"\u003e#1392\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/a36733b239de9753fd7a524f97e250ee1b96b3a3\"\u003e\u003ccode\u003ea36733b\u003c/code\u003e\u003c/a\u003e chore: pin npm release version in publish\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/2b7ab6b9c0cfcccb83b31ca34f533eece33df4d5\"\u003e\u003ccode\u003e2b7ab6b\u003c/code\u003e\u003c/a\u003e chore: pin npm release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/7924205b8b1ba6f4b25d27d45541c87c14d89737\"\u003e\u003ccode\u003e7924205\u003c/code\u003e\u003c/a\u003e chore: replace test-harness submodule with spec submodule (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1359\"\u003e#1359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/aab82bd65bb11d2ce8eb3e830f992002a8030c13\"\u003e\u003ccode\u003eaab82bd\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​angular/compiler\u003c/code\u003e to v21.2.4 [security] (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1386\"\u003e#1386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/528f826a8e56874d5af77b2034186b341bcb975d\"\u003e\u003ccode\u003e528f826\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint-config-prettier to v10 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1299\"\u003e#1299\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/1999690c22b809a575a02187eb5fdddcfb5fe95c\"\u003e\u003ccode\u003e1999690\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​angular/compiler\u003c/code\u003e to v21.2.4 [security] (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1383\"\u003e#1383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/0c955b5af2dc1470af29c3c77c7dbf47afb31153\"\u003e\u003ccode\u003e0c955b5\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​angular/compiler\u003c/code\u003e to v21.2.4 [security] (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1382\"\u003e#1382\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/e9ac76f9500d638945110c490c3fab90deaa4122\"\u003e\u003ccode\u003ee9ac76f\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v22.19.17 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1381\"\u003e#1381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/9bb2271339e47c3747b0ded0feca287aefd67601\"\u003e\u003ccode\u003e9bb2271\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​angular/build\u003c/code\u003e to v21.2.7 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1380\"\u003e#1380\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/open-feature/js-sdk/compare/core-v1.9.2...core-v1.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@openfeature/web-sdk` from 1.7.3 to 1.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/open-feature/js-sdk/releases\"\u003e@​openfeature/web-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecore: v1.8.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/compare/core-v1.7.2...core-v1.8.0\"\u003e1.8.0\u003c/a\u003e (2025-04-10)\u003c/h2\u003e\n\u003ch3\u003e✨ New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd support for abort controllers to event handlers (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1151\"\u003e#1151\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/6a224830fa4e62fc30a7802536f6f6fc3f772038\"\u003e6a22483\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eweb-sdk: v1.8.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/compare/web-sdk-v1.7.3...web-sdk-v1.8.0\"\u003e1.8.0\u003c/a\u003e (2026-04-21)\u003c/h2\u003e\n\u003ch3\u003e✨ New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u0026quot;sideEffects\u0026quot;: false to package.json files for all packages (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1343\"\u003e#1343\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/d8e968ed2513fe986a6500895f3399303a2f0b96\"\u003ed8e968e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport type-safe flag keys via module augmentation (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1349\"\u003e#1349\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/fb2ed4a7d64d9b8437975a0ef6cb4fe6a12dd671\"\u003efb2ed4a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport type-safe variant values for InMemoryProvider (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1356\"\u003e#1356\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/431f899191a2f7693fea9fab40f7cfb1f22f61f8\"\u003e431f899\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧹 Chore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ereplace test-harness submodule with spec submodule (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1359\"\u003e#1359\u003c/a\u003e) (\u003ca href=\"https://github.com/open-feature/js-sdk/commit/7924205b8b1ba6f4b25d27d45541c87c14d89737\"\u003e7924205\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/open-feature/js-sdk/commit/b60c3df3727232a5b2366e4327eab754fbfa790a\"\u003e\u003ccode\u003eb60c3df\u003c/code\u003e\u003c/a\u003e chore(main): release core 1.8.0 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1155\"\u003e#1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/5b19eb035ab79633f675d2ae891f96b356ae34df\"\u003e\u003ccode\u003e5b19eb0\u003c/code\u003e\u003c/a\u003e chore: use server src not dist in nest tests (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/5afe61f9e351b037b04c93a1d81aee8016756748\"\u003e\u003ccode\u003e5afe61f\u003c/code\u003e\u003c/a\u003e feat: add polyfill for react use hook (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1157\"\u003e#1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/60401b6ceccc345fdadccfab18ba07b5981b540c\"\u003e\u003ccode\u003e60401b6\u003c/code\u003e\u003c/a\u003e chore: prompt release of react v1 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1162\"\u003e#1162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/4482c2b33a55cf3f8bf9a3bb0934558ea0157d5d\"\u003e\u003ccode\u003e4482c2b\u003c/code\u003e\u003c/a\u003e chore: add global maintainers to codeowners (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/2c5b37c79d72d60864c27b9e67d96e99ef4ae241\"\u003e\u003ccode\u003e2c5b37c\u003c/code\u003e\u003c/a\u003e fix: Typo in name of the function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/cf89e7da24f43e8142e117ae3b662f380a66e514\"\u003e\u003ccode\u003ecf89e7d\u003c/code\u003e\u003c/a\u003e chore: add nest to test script (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/ae8fce87530005ed20f7e68dc696ce67053fca31\"\u003e\u003ccode\u003eae8fce8\u003c/code\u003e\u003c/a\u003e feat: add a top-level method for accessing providers (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1152\"\u003e#1152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/eec21dda821af412594347b2b79bd376544e7fd8\"\u003e\u003ccode\u003eeec21dd\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency uuid to v11 (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1073\"\u003e#1073\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/open-feature/js-sdk/commit/6a224830fa4e62fc30a7802536f6f6fc3f772038\"\u003e\u003ccode\u003e6a22483\u003c/code\u003e\u003c/a\u003e feat: add support for abort controllers to event handlers (\u003ca href=\"https://redirect.github.com/open-feature/js-sdk/issues/1151\"\u003e#1151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/open-feature/js-sdk/compare/web-sdk-v1.7.3...core-v1.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@sentry/nextjs` from 10.49.0 to 10.55.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-javascript/releases\"\u003e@​sentry/nextjs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.55.0\u003c/h2\u003e\n\u003ch3\u003eImportant Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(hono): Promote \u003ccode\u003e@sentry/hono\u003c/code\u003e to stable and deprecate \u003ccode\u003ehonoIntegration\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21208\"\u003e#21208\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003e@sentry/hono\u003c/code\u003e SDK is now stable. See the \u003ca href=\"https://docs.sentry.io/platforms/javascript/guides/hono/\"\u003eSentry Hono SDK docs\u003c/a\u003e to get started.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003edocs(tanstackstart-react): Promote SDK status to beta (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21175\"\u003e#21175\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis release promotes the \u003ccode\u003e@sentry/tanstackstart-react\u003c/code\u003e SDK to beta. For details on how to use it, check out the\n\u003ca href=\"https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/\"\u003eSentry TanStack Start SDK docs\u003c/a\u003e. Please reach out on\n\u003ca href=\"https://github.com/getsentry/sentry-javascript/issues/new/choose\"\u003eGitHub\u003c/a\u003e if you have any feedback or concerns.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(hono): Add \u003ccode\u003eshouldHandleError\u003c/code\u003e option to \u003ccode\u003esentry()\u003c/code\u003e middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21205\"\u003e#21205\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003esentry()\u003c/code\u003e middleware now accepts a \u003ccode\u003eshouldHandleError\u003c/code\u003e callback to control which errors are captured and sent to Sentry. By default, 3xx/4xx HTTP errors are ignored and 5xx errors and plain \u003ccode\u003eError\u003c/code\u003e objects are captured. Return \u003ccode\u003etrue\u003c/code\u003e from the callback to capture an error, \u003ccode\u003efalse\u003c/code\u003e to suppress it.\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003eapp.use(\n  sentry(app, {\n    dsn: '__DSN__',\n    shouldHandleError(error) {\n      const status = (error as { status?: number })?.status;\n      // Capture 401/403 in addition to the default 5xx errors\n      return status === 401 || status === 403 || typeof status !== 'number' || status \u0026gt;= 500;\n    },\n  }),\n);\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003etest(tanstackstart-react): Move initialization to client entry point (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21161\"\u003e#21161\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eChange the recommended setup for the SDK to do \u003ccode\u003eSentry.init()\u003c/code\u003e in the client entry file to capture telemetry that is emitted ahead of page hydration.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Add distributed tracing (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21144\"\u003e#21144\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer and client traces are now automatically connected, allowing you to see the full request lifecycle from server-side rendering through client-side hydration in a single trace.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Add server-side route parametrization (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21147\"\u003e#21147\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer transaction names are now parametrized automatically (e.g., \u003ccode\u003eGET /users/123\u003c/code\u003e becomes \u003ccode\u003eGET /users/$userId\u003c/code\u003e), improving transaction grouping in Sentry.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Show readable server function names in traces (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21190\"\u003e#21190\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer function spans now show human-readable names (e.g., \u003ccode\u003eGET /_serverFn/greet\u003c/code\u003e instead of \u003ccode\u003eGET /_serverFn/a10e70b3...\u003c/code\u003e). The \u003ccode\u003etanstackstart.function.hash.sha256\u003c/code\u003e span attribute has been renamed to \u003ccode\u003etanstackstart.function.id\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): Migrate request data to \u003ccode\u003edataCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21071\"\u003e#21071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(hono): Add warning in Bun for double init (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21195\"\u003e#21195\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/getsentry/sentry-javascript/blob/develop/CHANGELOG.md\"\u003e@​sentry/nextjs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.55.0\u003c/h2\u003e\n\u003ch3\u003eImportant Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(hono): Promote \u003ccode\u003e@sentry/hono\u003c/code\u003e to stable and deprecate \u003ccode\u003ehonoIntegration\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21208\"\u003e#21208\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003e@sentry/hono\u003c/code\u003e SDK is now stable. See the \u003ca href=\"https://docs.sentry.io/platforms/javascript/guides/hono/\"\u003eSentry Hono SDK docs\u003c/a\u003e to get started.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003edocs(tanstackstart-react): Promote SDK status to beta (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21175\"\u003e#21175\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThis release promotes the \u003ccode\u003e@sentry/tanstackstart-react\u003c/code\u003e SDK to beta. For details on how to use it, check out the\n\u003ca href=\"https://docs.sentry.io/platforms/javascript/guides/tanstackstart-react/\"\u003eSentry TanStack Start SDK docs\u003c/a\u003e. Please reach out on\n\u003ca href=\"https://github.com/getsentry/sentry-javascript/issues/new/choose\"\u003eGitHub\u003c/a\u003e if you have any feedback or concerns.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(hono): Add \u003ccode\u003eshouldHandleError\u003c/code\u003e option to \u003ccode\u003esentry()\u003c/code\u003e middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21205\"\u003e#21205\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003esentry()\u003c/code\u003e middleware now accepts a \u003ccode\u003eshouldHandleError\u003c/code\u003e callback to control which errors are captured and sent to Sentry. By default, 3xx/4xx HTTP errors are ignored and 5xx errors and plain \u003ccode\u003eError\u003c/code\u003e objects are captured. Return \u003ccode\u003etrue\u003c/code\u003e from the callback to capture an error, \u003ccode\u003efalse\u003c/code\u003e to suppress it.\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003eapp.use(\n  sentry(app, {\n    dsn: '__DSN__',\n    shouldHandleError(error) {\n      const status = (error as { status?: number })?.status;\n      // Capture 401/403 in addition to the default 5xx errors\n      return status === 401 || status === 403 || typeof status !== 'number' || status \u0026gt;= 500;\n    },\n  }),\n);\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003etest(tanstackstart-react): Move initialization to client entry point (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21161\"\u003e#21161\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eChange the recommended setup for the SDK to do \u003ccode\u003eSentry.init()\u003c/code\u003e in the client entry file to capture telemetry that is emitted ahead of page hydration.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Add distributed tracing (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21144\"\u003e#21144\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer and client traces are now automatically connected, allowing you to see the full request lifecycle from server-side rendering through client-side hydration in a single trace.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Add server-side route parametrization (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21147\"\u003e#21147\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer transaction names are now parametrized automatically (e.g., \u003ccode\u003eGET /users/123\u003c/code\u003e becomes \u003ccode\u003eGET /users/$userId\u003c/code\u003e), improving transaction grouping in Sentry.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(tanstackstart-react): Show readable server function names in traces (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21190\"\u003e#21190\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eServer function spans now show human-readable names (e.g., \u003ccode\u003eGET /_serverFn/greet\u003c/code\u003e instead of \u003ccode\u003eGET /_serverFn/a10e70b3...\u003c/code\u003e). The \u003ccode\u003etanstackstart.function.hash.sha256\u003c/code\u003e span attribute has been renamed to \u003ccode\u003etanstackstart.function.id\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(core): Migrate request data to \u003ccode\u003edataCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/21071\"\u003e#21071\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/getsentry/sentry-javascript/commit/acd7b57e1daa9041ee8a081c42af219aa994cca8\"\u003e\u003ccode\u003eacd7b57\u003c/code\u003e\u003c/a\u003e release: 10.55.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/d5323d24e790bf3200e029bce30ceb86954a7685\"\u003e\u003ccode\u003ed5323d2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/21216\"\u003e#21216\u003c/a\u003e from getsentry/prepare-release/10.55.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/2fb19298a7236ff5421916851439c20b2634c701\"\u003e\u003ccode\u003e2fb1929\u003c/code\u003e\u003c/a\u003e meta(changelog): Update changelog for 10.55.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/556bcb391de918a64cc9dcdfa5f58a4b365b0444\"\u003e\u003ccode\u003e556bcb3\u003c/code\u003e\u003c/a\u003e feat(hono): Add \u003ccode\u003eshouldHandleError\u003c/code\u003e as middleware option (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/21205\"\u003e#21205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/7a67ea48b66d173d8db4cf4f8610c9aa8221fc74\"\u003e\u003ccode\u003e7a67ea4\u003c/code\u003e\u003c/a\u003e feat(hono): Promote \u003ccode\u003e@sentry/hono\u003c/code\u003e to stable and deprecate \u003ccode\u003ehonoIntegration\u003c/code\u003e ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/cead7f9836034226bec77ebdb168e8338cffeb21\"\u003e\u003ccode\u003ecead7f9\u003c/code\u003e\u003c/a\u003e fix(e2e): Fix \u003ccode\u003eastro-6\u003c/code\u003e e2e test build by relaxing astro version range (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/21211\"\u003e#21211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/75fd1d545dbba62faa72c15f0905aea2055d7bf1\"\u003e\u003ccode\u003e75fd1d5\u003c/code\u003e\u003c/a\u003e chore(changelog): clarify array attributes impact on \u003ccode\u003ebeforeSend*\u003c/code\u003e callbacks ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/8a2a490df1340df136cb051d9d8f06aaeb36aad6\"\u003e\u003ccode\u003e8a2a490\u003c/code\u003e\u003c/a\u003e fix(cloudflare): Use original waitUntil to not create a deadlock (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/21197\"\u003e#21197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/f7b506d5ad421a755c368b4a7754d4cd8027de48\"\u003e\u003ccode\u003ef7b506d\u003c/code\u003e\u003c/a\u003e feat(metrics): Migrate metrics to use \u003ccode\u003edataCollection\u003c/code\u003e instead of `sendDefaul...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/f55fc305ee86eb4e276105f7fda4c0328f862ab9\"\u003e\u003ccode\u003ef55fc30\u003c/code\u003e\u003c/a\u003e feat(core): Migrate request data to \u003ccode\u003edataCollection\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/21071\"\u003e#21071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-javascript/compare/10.49.0...10.55.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-query` from 5.99.0 to 5.100.14\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\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/TanStack/query/blob/main/packages/react-query/CHANGELOG.md\"\u003e@​tanstack/react-query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.14\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003efix(react-query): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://redirect.github.com/TanStack/query/pull/10759\"\u003e#10759\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies []:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.13\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.13\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.12\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.12\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/fcee7bdc429385ae8ffa224fa8a7a9ec7b8ee380\"\u003e\u003ccode\u003efcee7bd\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.8\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/ba6e7beebd50143408f01fcf5d9aee2ec1486f60\"\u003e\u003ccode\u003eba6e7be\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10767\"\u003e#10767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/ed20b6d7541c908033acfcad92b0cd112930d1c3\"\u003e\u003ccode\u003eed20b6d\u003c/code\u003e\u003c/a\u003e fix(react): do not go into optimistic fetching state when not subscribed (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10\"\u003e#10\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/05cf2bc0a4eae64959dc8a40152e2878190c971b\"\u003e\u003ccode\u003e05cf2bc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10758\"\u003e#10758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/d423168f6261a5cb3d353e53b27c8150cc271151\"\u003e\u003ccode\u003ed423168\u003c/code\u003e\u003c/a\u003e fix(query-core): use built-in NoInfer for generic indexed-access types (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10593\"\u003e#10593\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/5ff4f6936bb66a64267eb4413430f956eecf7248\"\u003e\u003ccode\u003e5ff4f69\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10755\"\u003e#10755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query@5.100.14/packages/react-query\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dashjs` from 5.1.1 to 5.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/releases\"\u003edashjs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003edash.js v5.2.0\u003c/h2\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eIntroduces comprehensive support for CMCD (Common Media Client Data) Version 2, significantly expanding the player's capabilities for media analytics and client-side data reporting. The implementation leverages the \u003ccode\u003e@​svta/cml-cmcd\u003c/code\u003e library's CmcdReporter to centralize reporting mechanisms, reducing complexity and improving maintainability while aligning with the latest CMCD specifications by \u003ca href=\"https://github.com/cotid-qualabs\"\u003e\u003ccode\u003e@​cotid-qualabs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sebastianpiq\"\u003e\u003ccode\u003e@​sebastianpiq\u003c/code\u003e\u003c/a\u003e , \u003ca href=\"https://github.com/littlespex\"\u003e\u003ccode\u003e@​littlespex\u003c/code\u003e\u003c/a\u003e,\u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4816\"\u003eDash-Industry-Forum/dash.js#4816\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Certurl element by \u003ca href=\"https://github.com/gorkemg\"\u003e\u003ccode\u003e@​gorkemg\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e  in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4876\"\u003eDash-Industry-Forum/dash.js#4876\u003c/a\u003e,  \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4973\"\u003eDash-Industry-Forum/dash.js#4973\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Apple FairPlay Streaming (FPS) DRM support by \u003ca href=\"https://github.com/tobbee\"\u003e\u003ccode\u003e@​tobbee\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4941\"\u003eDash-Industry-Forum/dash.js#4941\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a new reference UI by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e (Claude Opus 4.6 was used in this PR) in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4974\"\u003eDash-Industry-Forum/dash.js#4974\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a limitBitrateByPortalMinimum setting to prevent limiting too much by \u003ca href=\"https://github.com/robertbryer\"\u003e\u003ccode\u003e@​robertbryer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4950\"\u003eDash-Industry-Forum/dash.js#4950\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate 608 library to support H.265/H.266 payloads by \u003ca href=\"https://github.com/littlespex\"\u003e\u003ccode\u003e@​littlespex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4954\"\u003eDash-Industry-Forum/dash.js#4954\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a new method getRepresentationsByTypeUnfiltered. This allows applications to get all Representations regardless of any filter settings  by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4963\"\u003eDash-Industry-Forum/dash.js#4963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnable mapping of Supplemental and Essential Properties from AdaptationSet to all Representations, but exclude those needed for URLQueryParams according to Annex I. by \u003ca href=\"https://github.com/stschr\"\u003e\u003ccode\u003e@​stschr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4901\"\u003eDash-Industry-Forum/dash.js#4901\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a setting blacklistExpiryTime to expire blacklisted service locations by \u003ca href=\"https://github.com/robertbryer\"\u003e\u003ccode\u003e@​robertbryer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4983\"\u003eDash-Industry-Forum/dash.js#4983\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eImprovements\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePerformance: reduce Object.keys allocations in hot paths by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4937\"\u003eDash-Industry-Forum/dash.js#4937\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance: make GapController interval configurable and reduce hot-path allocations by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4943\"\u003eDash-Industry-Forum/dash.js#4943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApply npm audit fixes by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4899\"\u003eDash-Industry-Forum/dash.js#4899\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4994\"\u003eDash-Industry-Forum/dash.js#4994\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/5023\"\u003eDash-Industry-Forum/dash.js#5023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow preload to work even when the setting cacheInitSegments is false by \u003ca href=\"https://github.com/robertbryer\"\u003e\u003ccode\u003e@​robertbryer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4957\"\u003eDash-Industry-Forum/dash.js#4957\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdds a warning message when an AdaptationSet is filtered because of unsupported EssentialProperties by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4961\"\u003eDash-Industry-Forum/dash.js#4961\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Agents.md with information for AI agents by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4965\"\u003eDash-Industry-Forum/dash.js#4965\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove track equality check by \u003ca href=\"https://github.com/stschr\"\u003e\u003ccode\u003e@​stschr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4966\"\u003eDash-Industry-Forum/dash.js#4966\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLow Latency Improvements by \u003ca href=\"https://github.com/ryanmccartney\"\u003e\u003ccode\u003e@​ryanmccartney\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4916\"\u003eDash-Industry-Forum/dash.js#4916\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRefactors the GitHub actions to make specific parts reusable and avoid code duplication by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4975\"\u003eDash-Industry-Forum/dash.js#4975\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd notification pane in reference UI by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4977\"\u003eDash-Industry-Forum/dash.js#4977\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRefactor: replace bcp-47-normalize with lightweight BCP-47 normalization (-185 KB) by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4970\"\u003eDash-Industry-Forum/dash.js#4970\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdds options to set the persistentState and the distinctiveIdentifier via the reference UIby \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4991\"\u003eDash-Industry-Forum/dash.js#4991\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace ua-parser-js with lightweight browser detection (-26 KB) by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4972\"\u003eDash-Industry-Forum/dash.js#4972\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/5007\"\u003eDash-Industry-Forum/dash.js#5007\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDynamically read out request timeout in case settings are updated during runtime by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4997\"\u003eDash-Industry-Forum/dash.js#4997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAbort retrieveManifest requests after reset by \u003ca href=\"https://github.com/robertbryer\"\u003e\u003ccode\u003e@​robertbryer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/5027\"\u003eDash-Industry-Forum/dash.js#5027\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix an issue with AdaptationSets linking to themself in a SupplementalProperty by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4918\"\u003eDash-Industry-Forum/dash.js#4918\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove karma-webdriver-launcher because of insecurities and add buffe… by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4920\"\u003eDash-Industry-Forum/dash.js#4920\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCheck K value when determining whether to enable low latency mode by \u003ca href=\"https://github.com/ryanmccartney\"\u003e\u003ccode\u003e@​ryanmccartney\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4915\"\u003eDash-Industry-Forum/dash.js#4915\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix an issue that lead to exponential Increase in Concurrent Segment Requests for low latency streaming by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4921\"\u003eDash-Industry-Forum/dash.js#4921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echanging media asset location by \u003ca href=\"https://github.com/stschr\"\u003e\u003ccode\u003e@​stschr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4928\"\u003eDash-Industry-Forum/dash.js#4928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix downloads of WebVTT segments in multiperiod MPD by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4925\"\u003eDash-Industry-Forum/dash.js#4925\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix a bug in the L3D implementation when playing livesim2 content by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4927\"\u003eDash-Industry-Forum/dash.js#4927\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(steering): Fix incorrect splice/indexOf arguments in blacklist timer cleanup by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4946\"\u003eDash-Industry-Forum/dash.js#4946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(mss): prevent crash when all DVR segments are removed by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4947\"\u003eDash-Industry-Forum/dash.js#4947\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix addressing changed codecs at Period boundaries by \u003ca href=\"https://github.com/stschr\"\u003e\u003ccode\u003e@​stschr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4949\"\u003eDash-Industry-Forum/dash.js#4949\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdds missing NEW_TRACK_SELECTED to Typescript file. Fixes \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/4940\"\u003e#4940\u003c/a\u003e by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4952\"\u003eDash-Industry-Forum/dash.js#4952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChange StreamProcessor bandwidth check for scalable LCEVC by \u003ca href=\"https://github.com/v-nova-romas\"\u003e\u003ccode\u003e@​v-nova-romas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4951\"\u003eDash-Industry-Forum/dash.js#4951\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix/nullpointer accessibility by \u003ca href=\"https://github.com/dsilhavy\"\u003e\u003ccode\u003e@​dsilhavy\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4955\"\u003eDash-Industry-Forum/dash.js#4955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(streaming): add LRU cache limit to InitCache by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4935\"\u003eDash-Industry-Forum/dash.js#4935\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(core): prevent memory leaks in EventBus and XHRLoader by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4934\"\u003eDash-Industry-Forum/dash.js#4934\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace Edgeware with Eyevinn in reference player contributors by \u003ca href=\"https://github.com/tobbee\"\u003e\u003ccode\u003e@​tobbee\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4968\"\u003eDash-Industry-Forum/dash.js#4968\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ejsdoc fix + verbose logger by \u003ca href=\"https://github.com/stschr\"\u003e\u003ccode\u003e@​stschr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4980\"\u003eDash-Industry-Forum/dash.js#4980\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: make MediaPlayerFactory SSR-safe to prevent 'window is not defined' error by \u003ca href=\"https://github.com/PascalThuet\"\u003e\u003ccode\u003e@​PascalThuet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/pull/4929\"\u003eDash-Industry-Forum/dash.js#4929\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/Dash-Industry-Forum/dash.js/commit/4a2d7a93782e544999734410166101a68f8ba079\"\u003e\u003ccode\u003e4a2d7a9\u003c/code\u003e\u003c/a\u003e Add dist files for version 5.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/be1e2ef8d7164d87c01f202a61fdd0afcf124804\"\u003e\u003ccode\u003ebe1e2ef\u003c/code\u003e\u003c/a\u003e Merge remote-tracking branch 'origin/development'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/d91d92374c24442153c684a4eb199b518bfba732\"\u003e\u003ccode\u003ed91d923\u003c/code\u003e\u003c/a\u003e Change description of test vector in list of smoke vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/745c3bc96710810193d7e9f552b974c4fe06a39d\"\u003e\u003ccode\u003e745c3bc\u003c/code\u003e\u003c/a\u003e Fix vulnerability issues in simple express server (\u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/5031\"\u003e#5031\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/5647d8927f6106e19ca5a190c3af4a3f739dcc4a\"\u003e\u003ccode\u003e5647d89\u003c/code\u003e\u003c/a\u003e Feature: CMCD v2 (\u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/4816\"\u003e#4816\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/61d6502269cb3e838c4d2b84e5607971d8b1baed\"\u003e\u003ccode\u003e61d6502\u003c/code\u003e\u003c/a\u003e Add a setting blacklistExpiryTime to expire blacklisted service locations (\u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/4\"\u003e#4\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/93f6aec340cbecdaee504e28e0d1029461dad6a0\"\u003e\u003ccode\u003e93f6aec\u003c/code\u003e\u003c/a\u003e Fix unreachable code warning in MediaController and update eslint config to p...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/7bcce8b5215a45133b303ead77f2d6838a23d528\"\u003e\u003ccode\u003e7bcce8b\u003c/code\u003e\u003c/a\u003e Abort retrieveManifest requests after reset (\u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/5027\"\u003e#5027\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/551cfd167b17ec408d1cc82b90b1c82ba3d2386c\"\u003e\u003ccode\u003e551cfd1\u003c/code\u003e\u003c/a\u003e Fix a bug in the refrence UI causing loop for multiperiod content before the ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/commit/278b302e2b584aeb4c0f00880b79e60ddf5c32e1\"\u003e\u003ccode\u003e278b302\u003c/code\u003e\u003c/a\u003e Use responseStart for resourceTiming.responseStart (\u003ca href=\"https://redirect.github.com/Dash-Industry-Forum/dash.js/issues/5024\"\u003e#5024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Dash-Industry-Forum/dash.js/compare/v5.1.1...v5.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isomorphic-dompurify` from 3.8.0 to 3.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kkomelin/isomorphic-dompurify/releases\"\u003eisomorphic-dompurify's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.0: Updated dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edompurify 3.4.5 -\u0026gt; 3.4.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​biomejs/biome\u003c/code\u003e 2.4.15 -\u0026gt; 2.4.16\u003c/li\u003e\n\u003cli\u003evitest 4.1.6 -\u0026gt; 4.1.7\u003c/li\u003e\n\u003cli\u003epackageManager pnpm 11.1.3 -\u0026gt; 11.4.0\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.0: Updated dependencies\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): bump dompurify from 3.4.3 to 3.4.5 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot]\u003c/li\u003e\n\u003cli\u003echore: Allowed esbuild and disallowed lefthook for ci.\u003c/li\u003e\n\u003cli\u003echore: Added homepage URL to package.json.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kkomelin/isomorphic-dompurify/compare/3.13.0...3.14.0\"\u003ehttps://github.com/kkomelin/isomorphic-dompurify/compare/3.13.0...3.14.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.13.0: Updated dependencies\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps-dev): bump vitest from 4.1.5 to 4.1.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/kkomelin/isomorphic-dompurify/pull/435\"\u003ekkomelin/isomorphic-dompurify#435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​types/jsdom\u003c/code\u003e from 28.0.1 to 28.0.3 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/kkomelin/isomorphic-dompurify/pull/436\"\u003ekkomelin/isomorphic-dompurify#436\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​biomejs/biome\u003c/code\u003e from 2.4.14 to 2.4.15 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/kkomelin/isomorphic-dompurify/pull/434\"\u003ekkomelin/isomorphic-dompurify#434\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump dompurify from 3.4.2 to 3.4.3 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/kkomelin/isomorphic-dompurify/pull/437\"\u003ekkomelin/isomorphic-dompurify#437\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kkomelin/isomorphic-dompurify/compare/3.12.0...3.13.0\"\u003ehttps://github.com/kkomelin/isomorphic-dompurify/compare/3.12.0...3.13.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.12.0: Updated dependencies\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): bump dompurify from 3.4.1 to 3.4.2 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/kkomelin/isomorphic-dompurify/pull/430\"\u003ekkomelin/isomorphic-dompurify#430\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump jsdom from 29.1.0 to 29.1.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/kkomelin/isomorphic-dompurify/pull/431\"\u003ekkomelin/isomorphic-dompurify#431\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​biomejs/biome\u003c/code\u003e from 2.4.13 to 2.4.14 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/kkomelin/isomorphic-dompurify/pull/432\"\u003ekkomelin/isomorphic-dompurify#432\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kkomelin/isomorphic-dompurify/compare/3.11.0...3.12.0\"\u003ehttps://github.com/kkomelin/isomorphic-dompurify/compare/3.11.0...3.12.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.11.0: Export hook-related TypeScript types\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps-dev): bump \u003ccode\u003e@​biomejs/biome\u003c/code\u003e from 2.4.12 to 2.4.13 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/kkomelin/isomorphic-dompurify/pull/426\"\u003ekkomelin/isomorphic-dompurify#426\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump jsdom from 29.0.2 to 29.1.0 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/kkomelin/isomorphic-dompurify/pull/428\"\u003ekkomelin/isomorphic-dompurify#428\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: export hook-related TypeScript types (\u003ca href=\"https://redirect.github.com/kkomelin/isomorphic-dompurify/issues/427\"\u003e#427\u003c/a\u003e) by \u003ca href=\"https://github.com/kkomelin\"\u003e\u003ccode\u003e@​kkomelin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kkomelin/isomorphic-dompurify/pull/429\"\u003ekkomelin/isomorphic-dompurify#429\u003c/a\u003e (thanks \u003ca href=\"https://github.com/amankumarsaini28\"\u003e\u003ccode\u003e@​amankumarsaini28\u003c/code\u003e\u003c/a\u003e for requesting this update)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kkomelin/isomorphic-dompurify/compare/3.10.0...3.11.0\"\u003ehttps:...\n\n_Description has been truncated_","html_url":"https://github.com/gschiemann/EDUCMS/pull/12","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/gschiemann%2FEDUCMS/issues/12","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12/packages"}},{"old_version":"1.58.1","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-29T19:17:32.000Z","version_change":"1.58.1 → 1.60.0","issue":{"uuid":"4551014017","node_id":"PR_kwDOREaNsM7gxmvY","number":8,"state":"open","title":"deps(dev)(deps-dev): bump the development-dependencies group with 6 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-29T19:17:32.000Z","updated_at":"2026-05-29T19:18:14.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(dev)(deps-dev): bump","group_name":"development-dependencies","update_count":6,"packages":[{"name":"@jest/globals","old_version":"30.2.0","new_version":"30.4.1","repository_url":"https://github.com/jestjs/jest"},{"name":"@playwright/test","old_version":"1.58.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"eslint-config-next","old_version":"16.1.6","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"jest","old_version":"30.2.0","new_version":"30.4.2","repository_url":"https://github.com/jestjs/jest"},{"name":"jest-environment-jsdom","old_version":"30.2.0","new_version":"30.4.1","repository_url":"https://github.com/jestjs/jest"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development-dependencies group with 6 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@jest/globals](https://github.com/jestjs/jest/tree/HEAD/packages/jest-globals) | `30.2.0` | `30.4.1` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.1` | `1.60.0` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.1.6` | `16.2.6` |\n| [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) | `30.2.0` | `30.4.2` |\n| [jest-environment-jsdom](https://github.com/jestjs/jest/tree/HEAD/packages/jest-environment-jsdom) | `30.2.0` | `30.4.1` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n\nUpdates `@jest/globals` from 30.2.0 to 30.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jestjs/jest/releases\"\u003e@​jest/globals's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev30.4.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.0\u003c/h2\u003e\n\u003cp\u003eBig release! 😀\u003c/p\u003e\n\u003cp\u003eMain feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work \u003ccode\u003erequire(esm)\u003c/code\u003e module is now supported on Node 24.9+ (still requires \u003ccode\u003e--experimental-vm-modules\u003c/code\u003e like before).\u003c/p\u003e\n\u003cp\u003eIn addition we now support fake timers for the recently released \u003ccode\u003eTemporal\u003c/code\u003e API in Node v26.\u003c/p\u003e\n\u003cp\u003eReact 19 is also supported properly in \u003ccode\u003epretty-format\u003c/code\u003e, meaning snapshots of React components now work like they should.\u003c/p\u003e\n\u003cp\u003eDue to all the changes, there might be regressions that snuck in. Please report them!\u003c/p\u003e\n\u003cp\u003eFull list of changes below\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\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/jestjs/jest/blob/main/CHANGELOG.md\"\u003e@​jest/globals's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e30.4.1\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus]\u003c/code\u003e Prevent crash when \u003ccode\u003easyncError\u003c/code\u003e is undefined for non-Error throws (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16003\"\u003e#16003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-jasmine2]\u003c/code\u003e Include \u003ccode\u003eError.cause\u003c/code\u003e in JSON \u003ccode\u003efailureMessages\u003c/code\u003e output (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15967\"\u003e#15967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Fix preset path resolution on Windows when the preset uses subpath \u003ccode\u003eexports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15961\"\u003e#15961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config without a validation warning (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Project config validator now emits \u0026quot;is not supported in an individual project configuration\u0026quot; instead of \u0026quot;probably a typing mistake\u0026quot; for known global-only options (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-environment-node]\u003c/code\u003e Fix \u003ccode\u003e--localstorage-file\u003c/code\u003e warning on Node 25+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16086\"\u003e#16086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters]\u003c/code\u003e Apply global coverage threshold to unmatched pattern files in addition to glob/path thresholds (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16137\"\u003e#16137\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters, jest-runner, jest-runtime, jest-transform]\u003c/code\u003e Fix coverage report not showing correct code coverage when using \u003ccode\u003eprojects\u003c/code\u003e config option (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16140\"\u003e#16140\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Resolve \u003ccode\u003eexpect\u003c/code\u003e and \u003ccode\u003e@jest/expect\u003c/code\u003e from the internal module registry so test-file imports share the same \u003ccode\u003eJestAssertionError\u003c/code\u003e as the global \u003ccode\u003eexpect\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16130\"\u003e#16130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Improve CJS-from-ESM interop: \u003ccode\u003e__esModule\u003c/code\u003e/Babel default unwrap, broader named-export coverage, and shared CJS singleton across importers (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Load \u003ccode\u003e.js\u003c/code\u003e files with ESM syntax but no \u003ccode\u003e\u0026quot;type\u0026quot;:\u0026quot;module\u0026quot;\u003c/code\u003e marker as native ESM (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Extend the \u003ccode\u003e.js\u003c/code\u003e-with-ESM-syntax fallback to \u003ccode\u003erequire()\u003c/code\u003e on Node v24.9+ - falls back to \u003ccode\u003erequire(esm)\u003c/code\u003e when the CJS parser rejects ESM syntax (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16078\"\u003e#16078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix deadlocks and double-evaluation in concurrent ESM and wasm imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\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/jestjs/jest/commit/b3b4a09ed3005369dacc7466d1d2122797283785\"\u003e\u003ccode\u003eb3b4a09\u003c/code\u003e\u003c/a\u003e v30.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/5cbb21e0b3037edb42e503ec1a1ce80efad40c20\"\u003e\u003ccode\u003e5cbb21e\u003c/code\u003e\u003c/a\u003e v30.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/efb59c2e81083f8dc941f20d6d20a3af2dc8d068\"\u003e\u003ccode\u003eefb59c2\u003c/code\u003e\u003c/a\u003e v30.3.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jestjs/jest/commits/v30.4.1/packages/jest-globals\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.58.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `eslint-config-next` from 16.1.6 to 16.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/next.js/releases\"\u003eeslint-config-next's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.2.6\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release contains security fixes and backported bug fixes. It does \u003cstrong\u003enot\u003c/strong\u003e include all pending features/changes on canary.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eSecurity Fixes\u003c/h3\u003e\n\u003cp\u003eThe following advisories have been addressed:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eHigh:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-8h8q-6873-q5fj\"\u003eGHSA-8h8q-6873-q5fj: Denial of Service with Server Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-267c-6grr-h53f\"\u003eGHSA-267c-6grr-h53f: Middleware / Proxy bypass in App Router applications via segment-prefetch routes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-26hh-7cqf-hhc6\"\u003eGHSA-26hh-7cqf-hhc6: Middleware / Proxy bypass in App Router applications via segment-prefetch routes - \u003cstrong\u003eIncomplete Fix Follow-Up\u003c/strong\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-mg66-mrh9-m8jx\"\u003eGHSA-mg66-mrh9-m8jx: Denial of Service via connection exhaustion in applications using Cache Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-492v-c6pp-mqqv\"\u003eGHSA-492v-c6pp-mqqv: Middleware / Proxy bypass through dynamic route parameter injection\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-c4j6-fc7j-m34r\"\u003eGHSA-c4j6-fc7j-m34r: Server-side request forgery in applications using WebSocket upgrades\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-36qx-fr4f-26g5\"\u003eGHSA-36qx-fr4f-26g5: Middleware / Proxy bypass in Pages Router applications using i18n\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eModerate:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-ffhc-5mcf-pf4q\"\u003eGHSA-ffhc-5mcf-pf4q: Cross-site scripting in App Router applications using CSP nonces\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-gx5p-jg67-6x7h\"\u003eGHSA-gx5p-jg67-6x7h: Cross-site scripting in beforeInteractive scripts with untrusted input\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-h64f-5h5j-jqjh\"\u003eGHSA-h64f-5h5j-jqjh: Denial of Service in the Image Optimization API\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-wfc6-r584-vfw7\"\u003eGHSA-wfc6-r584-vfw7: Cache poisoning in React Server Component responses\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eLow:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-vfv6-92ff-j949\"\u003eGHSA-vfv6-92ff-j949: Cache poisoning via collisions in React Server Component cache-busting\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-3g8h-86w9-wvmq\"\u003eGHSA-3g8h-86w9-wvmq: Middleware / Proxy redirects can be cache-poisoned\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix: preserve HTTP access fallbacks during prerender recovery (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/92231\"\u003e#92231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix fallback route params case in app-page handler (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/91737\"\u003e#91737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix invalid HTML response for route-level RSC requests in deployment adapter (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/91541\"\u003e#91541\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePatch setHeader for direct route handlers (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93101\"\u003e#93101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude deployment id in \u003ccode\u003ecacheHandlers\u003c/code\u003e keys (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93453\"\u003e#93453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix double-encoding of URL pathname parts in client param parsing (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next/issues/93491\"\u003e#93491\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev16.2.5\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release contains security fixes and backported bug fixes. It does \u003cstrong\u003enot\u003c/strong\u003e include all pending features/changes on canary.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eSecurity Fixes\u003c/h3\u003e\n\u003cp\u003eThe following advisories have been addressed:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eHigh:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-8h8q-6873-q5fj\"\u003eGHSA-8h8q-6873-q5fj: Denial of Service with Server Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-267c-6grr-h53f\"\u003eGHSA-267c-6grr-h53f: Middleware / Proxy bypass in App Router applications via segment-prefetch routes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-mg66-mrh9-m8jx\"\u003eGHSA-mg66-mrh9-m8jx: Denial of Service via connection exhaustion in applications using Cache Components\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-492v-c6pp-mqqv\"\u003eGHSA-492v-c6pp-mqqv: Middleware / Proxy bypass through dynamic route parameter injection\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/security/advisories/GHSA-c4j6-fc7j-m34r\"\u003eGHSA-c4j6-fc7j-m34r: Server-side request forgery in applications using WebSocket upgrades\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/vercel/next.js/commit/ee6e79b1792a4d401ddf2480f40a83549fe8e722\"\u003e\u003ccode\u003eee6e79b\u003c/code\u003e\u003c/a\u003e v16.2.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/766148f9cd48c0e218acafcd0f15defc14871bf4\"\u003e\u003ccode\u003e766148f\u003c/code\u003e\u003c/a\u003e v16.2.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/2275bd8598c88e8652d1271e74bcf972f72f4f38\"\u003e\u003ccode\u003e2275bd8\u003c/code\u003e\u003c/a\u003e v16.2.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/d5f649b2f4affdad1009cb178c1e3b37f4f1ad3f\"\u003e\u003ccode\u003ed5f649b\u003c/code\u003e\u003c/a\u003e v16.2.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/52faae3d94641584e13691238df5be158d0f00fb\"\u003e\u003ccode\u003e52faae3\u003c/code\u003e\u003c/a\u003e v16.2.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/ed7d2cef246dcb3e2955c018fd8b2027e0ff8eed\"\u003e\u003ccode\u003eed7d2ce\u003c/code\u003e\u003c/a\u003e v16.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/c5c94dffbf084e66b172a9c6ff23d80c24973764\"\u003e\u003ccode\u003ec5c94df\u003c/code\u003e\u003c/a\u003e v16.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/3683192a6bea9011222e9b236f8000b5266f3fe6\"\u003e\u003ccode\u003e3683192\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.104\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/668981482a3f9de97c4c1371e940e0f84972c080\"\u003e\u003ccode\u003e6689814\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.103\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/ad66dbc89b356867c308110dc5365a696c763991\"\u003e\u003ccode\u003ead66dbc\u003c/code\u003e\u003c/a\u003e v16.2.0-canary.102\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/next.js/commits/v16.2.6/packages/eslint-config-next\"\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-config-next since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jest` from 30.2.0 to 30.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jestjs/jest/releases\"\u003ejest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev30.4.2\u003c/h2\u003e\n\u003ch1\u003eFixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix named imports from CJS modules whose \u003ccode\u003emodule.exports\u003c/code\u003e is a function with own-property exports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16150\"\u003e#16150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.1...v30.4.2\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.1...v30.4.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.0\u003c/h2\u003e\n\u003cp\u003eBig release! 😀\u003c/p\u003e\n\u003cp\u003eMain feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work \u003ccode\u003erequire(esm)\u003c/code\u003e module is now supported on Node 24.9+ (still requires \u003ccode\u003e--experimental-vm-modules\u003c/code\u003e like before).\u003c/p\u003e\n\u003cp\u003eIn addition we now support fake timers for the recently released \u003ccode\u003eTemporal\u003c/code\u003e API in Node v26.\u003c/p\u003e\n\u003cp\u003eReact 19 is also supported properly in \u003ccode\u003epretty-format\u003c/code\u003e, meaning snapshots of React components now work like they should.\u003c/p\u003e\n\u003cp\u003eDue to all the changes, there might be regressions that snuck in. Please report them!\u003c/p\u003e\n\u003cp\u003eFull list of changes below\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\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/jestjs/jest/blob/main/CHANGELOG.md\"\u003ejest's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e30.4.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix named imports from CJS modules whose \u003ccode\u003emodule.exports\u003c/code\u003e is a function with own-property exports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16150\"\u003e#16150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.1\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus]\u003c/code\u003e Prevent crash when \u003ccode\u003easyncError\u003c/code\u003e is undefined for non-Error throws (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16003\"\u003e#16003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-jasmine2]\u003c/code\u003e Include \u003ccode\u003eError.cause\u003c/code\u003e in JSON \u003ccode\u003efailureMessages\u003c/code\u003e output (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15967\"\u003e#15967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Fix preset path resolution on Windows when the preset uses subpath \u003ccode\u003eexports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15961\"\u003e#15961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config without a validation warning (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Project config validator now emits \u0026quot;is not supported in an individual project configuration\u0026quot; instead of \u0026quot;probably a typing mistake\u0026quot; for known global-only options (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-environment-node]\u003c/code\u003e Fix \u003ccode\u003e--localstorage-file\u003c/code\u003e warning on Node 25+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16086\"\u003e#16086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters]\u003c/code\u003e Apply global coverage threshold to unmatched pattern files in addition to glob/path thresholds (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16137\"\u003e#16137\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/jestjs/jest/commit/746f2a0f57c56e3bba555280f0587d40f3db95c0\"\u003e\u003ccode\u003e746f2a0\u003c/code\u003e\u003c/a\u003e v30.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/b3b4a09ed3005369dacc7466d1d2122797283785\"\u003e\u003ccode\u003eb3b4a09\u003c/code\u003e\u003c/a\u003e v30.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/5cbb21e0b3037edb42e503ec1a1ce80efad40c20\"\u003e\u003ccode\u003e5cbb21e\u003c/code\u003e\u003c/a\u003e v30.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/db7141a93cc85fab81cf9c25368e1f2b2c312286\"\u003e\u003ccode\u003edb7141a\u003c/code\u003e\u003c/a\u003e fix: allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config (\u003ca href=\"https://github.com/jestjs/jest/tree/HEAD/packages/jest/issues/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/efb59c2e81083f8dc941f20d6d20a3af2dc8d068\"\u003e\u003ccode\u003eefb59c2\u003c/code\u003e\u003c/a\u003e v30.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/96c53d30660e51bf76ed2cd1ecc2334c399ac31c\"\u003e\u003ccode\u003e96c53d3\u003c/code\u003e\u003c/a\u003e feat(jest-config): add \u003ccode\u003edefineConfig\u003c/code\u003e and \u003ccode\u003emergeConfig\u003c/code\u003e functions (\u003ca href=\"https://github.com/jestjs/jest/tree/HEAD/packages/jest/issues/15844\"\u003e#15844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jestjs/jest/commits/v30.4.2/packages/jest\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jest-environment-jsdom` from 30.2.0 to 30.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jestjs/jest/releases\"\u003ejest-environment-jsdom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev30.4.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\"\u003ehttps://github.com/jestjs/jest/compare/v30.4.0...v30.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev30.4.0\u003c/h2\u003e\n\u003cp\u003eBig release! 😀\u003c/p\u003e\n\u003cp\u003eMain feature is a rewrite of our custom runtime in preparation for stabilisation of native support of ESM. As part of that work \u003ccode\u003erequire(esm)\u003c/code\u003e module is now supported on Node 24.9+ (still requires \u003ccode\u003e--experimental-vm-modules\u003c/code\u003e like before).\u003c/p\u003e\n\u003cp\u003eIn addition we now support fake timers for the recently released \u003ccode\u003eTemporal\u003c/code\u003e API in Node v26.\u003c/p\u003e\n\u003cp\u003eReact 19 is also supported properly in \u003ccode\u003epretty-format\u003c/code\u003e, meaning snapshots of React components now work like they should.\u003c/p\u003e\n\u003cp\u003eDue to all the changes, there might be regressions that snuck in. Please report them!\u003c/p\u003e\n\u003cp\u003eFull list of changes below\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\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/jestjs/jest/blob/main/CHANGELOG.md\"\u003ejest-environment-jsdom's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e30.4.1\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-runner, jest-schemas, jest-types]\u003c/code\u003e Allow custom runner configuration options via tuple format \u003ccode\u003e['runner-path', {options}]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16141\"\u003e#16141\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Align CJS-from-ESM default export with Node: \u003ccode\u003emodule.exports\u003c/code\u003e is always the ESM default, \u003ccode\u003e__esModule\u003c/code\u003e unwrapping is no longer applied (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16143\"\u003e#16143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e30.4.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[babel-jest]\u003c/code\u003e Support collecting coverage from \u003ccode\u003e.mts\u003c/code\u003e, \u003ccode\u003e.cts\u003c/code\u003e (and other) files (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15994\"\u003e#15994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-cli, jest-config, jest-core, jest-jasmine2, jest-types]\u003c/code\u003e Add \u003ccode\u003e--collect-tests\u003c/code\u003e flag to discover and list tests without executing them (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16006\"\u003e#16006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-runner, jest-worker]\u003c/code\u003e Add \u003ccode\u003eworkerGracefulExitTimeout\u003c/code\u003e config option to control how long workers are given to exit before being force-killed (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15984\"\u003e#15984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Add support for \u003ccode\u003ejest.config.mts\u003c/code\u003e as a valid configuration file (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16005\"\u003e#16005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config, jest-core, jest-reporters, jest-runner]\u003c/code\u003e \u003ccode\u003everbose\u003c/code\u003e and \u003ccode\u003esilent\u003c/code\u003e can now be set per-project; the project-level value overrides the global value for that project's tests (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16133\"\u003e#16133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Duration\u003c/code\u003e in \u003ccode\u003ejest.advanceTimersByTime()\u003c/code\u003e and \u003ccode\u003ejest.advanceTimersByTimeAsync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Accept \u003ccode\u003eTemporal.Instant\u003c/code\u003e and \u003ccode\u003eTemporal.ZonedDateTime\u003c/code\u003e in \u003ccode\u003ejest.setSystemTime()\u003c/code\u003e and \u003ccode\u003euseFakeTimers({now})\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16128\"\u003e#16128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/fake-timers]\u003c/code\u003e Support faking \u003ccode\u003eTemporal.Now.*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16131\"\u003e#16131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-mock]\u003c/code\u003e Add \u003ccode\u003eclearMocksOnScope(scope)\u003c/code\u003e on \u003ccode\u003eModuleMocker\u003c/code\u003e for clearing every mock function exposed on a scope object (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16088\"\u003e#16088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-resolve]\u003c/code\u003e Add \u003ccode\u003ecanResolveSync()\u003c/code\u003e on \u003ccode\u003eResolver\u003c/code\u003e so callers can detect when a user-configured resolver only exports an \u003ccode\u003easync\u003c/code\u003e hook (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16064\"\u003e#16064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Use synchronous \u003ccode\u003eevaluate()\u003c/code\u003e for ES modules without top-level \u003ccode\u003eawait\u003c/code\u003e on Node versions that support it (v24.9+), and prefer the synchronous transform path when a sync transformer is configured (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Support \u003ccode\u003erequire()\u003c/code\u003e of ES modules on Node v24.9+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16074\"\u003e#16074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Validate TC39 import attributes (\u003ccode\u003ewith { type: 'json' }\u003c/code\u003e) on ESM imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16127\"\u003e#16127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/transform]\u003c/code\u003e Add \u003ccode\u003ecanTransformSync(filename)\u003c/code\u003e on \u003ccode\u003eScriptTransformer\u003c/code\u003e so callers can pick the sync vs async transform path (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16062\"\u003e#16062\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-util]\u003c/code\u003e Add \u003ccode\u003eisError\u003c/code\u003e helper (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16076\"\u003e#16076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[pretty-format]\u003c/code\u003e Support React 19 (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16123\"\u003e#16123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[expect-utils]\u003c/code\u003e Fix \u003ccode\u003etoStrictEqual\u003c/code\u003e failing on \u003ccode\u003estructuredClone\u003c/code\u003e results due to cross-realm constructor mismatch (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15959\"\u003e#15959\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[@jest/expect-utils]\u003c/code\u003e Prevent \u003ccode\u003etoMatchObject\u003c/code\u003e/subset matching from throwing when encountering exotic iterables (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15952\"\u003e#15952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[fake-timers]\u003c/code\u003e Convert \u003ccode\u003eDate\u003c/code\u003e to milliseconds before passing to \u003ccode\u003e@sinonjs/fake-timers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16029\"\u003e#16029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest]\u003c/code\u003e Export \u003ccode\u003eGlobalConfig\u003c/code\u003e and \u003ccode\u003eProjectConfig\u003c/code\u003e TypeScript types (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus]\u003c/code\u003e Prevent crash when \u003ccode\u003easyncError\u003c/code\u003e is undefined for non-Error throws (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16003\"\u003e#16003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-circus, jest-jasmine2]\u003c/code\u003e Include \u003ccode\u003eError.cause\u003c/code\u003e in JSON \u003ccode\u003efailureMessages\u003c/code\u003e output (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15967\"\u003e#15967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Fix preset path resolution on Windows when the preset uses subpath \u003ccode\u003eexports\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/15961\"\u003e#15961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Allow \u003ccode\u003ecollectCoverage\u003c/code\u003e and \u003ccode\u003ecoverageProvider\u003c/code\u003e in project config without a validation warning (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-config]\u003c/code\u003e Project config validator now emits \u0026quot;is not supported in an individual project configuration\u0026quot; instead of \u0026quot;probably a typing mistake\u0026quot; for known global-only options (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16132\"\u003e#16132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-environment-node]\u003c/code\u003e Fix \u003ccode\u003e--localstorage-file\u003c/code\u003e warning on Node 25+ (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16086\"\u003e#16086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters]\u003c/code\u003e Apply global coverage threshold to unmatched pattern files in addition to glob/path thresholds (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16137\"\u003e#16137\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-reporters, jest-runner, jest-runtime, jest-transform]\u003c/code\u003e Fix coverage report not showing correct code coverage when using \u003ccode\u003eprojects\u003c/code\u003e config option (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16140\"\u003e#16140\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Resolve \u003ccode\u003eexpect\u003c/code\u003e and \u003ccode\u003e@jest/expect\u003c/code\u003e from the internal module registry so test-file imports share the same \u003ccode\u003eJestAssertionError\u003c/code\u003e as the global \u003ccode\u003eexpect\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16130\"\u003e#16130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Improve CJS-from-ESM interop: \u003ccode\u003e__esModule\u003c/code\u003e/Babel default unwrap, broader named-export coverage, and shared CJS singleton across importers (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Load \u003ccode\u003e.js\u003c/code\u003e files with ESM syntax but no \u003ccode\u003e\u0026quot;type\u0026quot;:\u0026quot;module\u0026quot;\u003c/code\u003e marker as native ESM (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Extend the \u003ccode\u003e.js\u003c/code\u003e-with-ESM-syntax fallback to \u003ccode\u003erequire()\u003c/code\u003e on Node v24.9+ - falls back to \u003ccode\u003erequire(esm)\u003c/code\u003e when the CJS parser rejects ESM syntax (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16078\"\u003e#16078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[jest-runtime]\u003c/code\u003e Fix deadlocks and double-evaluation in concurrent ESM and wasm imports (\u003ca href=\"https://redirect.github.com/jestjs/jest/pull/16050\"\u003e#16050\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/jestjs/jest/commit/b3b4a09ed3005369dacc7466d1d2122797283785\"\u003e\u003ccode\u003eb3b4a09\u003c/code\u003e\u003c/a\u003e v30.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/5cbb21e0b3037edb42e503ec1a1ce80efad40c20\"\u003e\u003ccode\u003e5cbb21e\u003c/code\u003e\u003c/a\u003e v30.4.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/efb59c2e81083f8dc941f20d6d20a3af2dc8d068\"\u003e\u003ccode\u003eefb59c2\u003c/code\u003e\u003c/a\u003e v30.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jestjs/jest/commit/b5b0220a824d29a443d2af4a56ce227f94478052\"\u003e\u003ccode\u003eb5b0220\u003c/code\u003e\u003c/a\u003e Remove unused dependencies from jest-environment-jsdom (\u003ca href=\"https://github.com/jestjs/jest/tree/HEAD/packages/jest-environment-jsdom/issues/15928\"\u003e#15928\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jestjs/jest/commits/v30.4.1/packages/jest-environment-jsdom\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prettier` from 3.8.1 to 3.8.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/prettier/releases\"\u003eprettier's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.8.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSCSS: Prevent trailing comma in \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18471\"\u003eprettier/prettier#18471\u003c/a\u003e by \u003ca href=\"https://github.com/kovsu\"\u003e\u003ccode\u003e@​kovsu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://github.com/prettier/prettier/blob/3.8.3/CHANGELOG.md#383\"\u003eChangelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.8.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Angular v21.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://github.com/prettier/prettier/blob/main/CHANGELOG.md#382\"\u003eChangelog\u003c/a\u003e\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/prettier/prettier/blob/main/CHANGELOG.md\"\u003eprettier's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.8.3\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.8.2...3.8.3\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eSCSS: Prevent trailing comma in \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18471\"\u003e#18471\u003c/a\u003e by \u003ca href=\"https://github.com/kovsu\"\u003e\u003ccode\u003e@​kovsu\u003c/code\u003e\u003c/a\u003e)\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"scss\"\u003e\u003ccode\u003e// Input\n$value: if(sass(false): 1; else: -1);\n\u003cp\u003e// Prettier 3.8.2\n$value: if(\nsass(false): 1; else: -1,\n);\u003c/p\u003e\n\u003cp\u003e// Prettier 3.8.3\n$value: if(sass(false): 1; else: -1);\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch1\u003e3.8.2\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.8.1...3.8.2\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eAngular: Support Angular v21.2 (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18722\"\u003e#18722\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prettier/prettier/pull/19034\"\u003e#19034\u003c/a\u003e by \u003ca href=\"https://github.com/fisker\"\u003e\u003ccode\u003e@​fisker\u003c/code\u003e\u003c/a\u003e)\u003c/h4\u003e\n\u003cp\u003eExhaustive typechecking with \u003ccode\u003e@default never;\u003c/code\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;!-- Input --\u0026gt;\n@switch (foo) {\n  @case (1) {}\n  @default never;\n}\n\u003cp\u003e\u0026lt;!-- Prettier 3.8.1 --\u0026gt;\nSyntaxError: Incomplete block \u0026quot;default never\u0026quot;. If you meant to write the @ character, you should use the \u0026quot;\u0026amp;\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/64\"\u003e#64\u003c/a\u003e;\u0026quot; HTML entity instead. (3:3)\u003c/p\u003e\n\u003cp\u003e\u0026lt;!-- Prettier 3.8.2 --\u0026gt;\n\u003ca href=\"https://github.com/switch\"\u003e\u003ccode\u003e@​switch\u003c/code\u003e\u003c/a\u003e (foo) {\n\u003ca href=\"https://github.com/case\"\u003e\u003ccode\u003e@​case\u003c/code\u003e\u003c/a\u003e (1) {}\n\u003ca href=\"https://github.com/default\"\u003e\u003ccode\u003e@​default\u003c/code\u003e\u003c/a\u003e never;\n}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003earrow function\u003c/code\u003e and \u003ccode\u003einstanceof\u003c/code\u003e expressions.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\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/prettier/prettier/commit/d7108a79ec745c04292aabf22c4c1adbd690b191\"\u003e\u003ccode\u003ed7108a7\u003c/code\u003e\u003c/a\u003e Release 3.8.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/177f90898170d363ef64fde663e4d13170688bfe\"\u003e\u003ccode\u003e177f908\u003c/code\u003e\u003c/a\u003e Prevent trailing comma in SCSS \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18471\"\u003e#18471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/1cd40668c3d6f2f4cf9d87bbc9096d92361b2606\"\u003e\u003ccode\u003e1cd4066\u003c/code\u003e\u003c/a\u003e Release \u003ccode\u003e@​prettier/plugin-oxc\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/a8700e245038cd8cc0cf28ef06ffedbcb3fc2dfc\"\u003e\u003ccode\u003ea8700e2\u003c/code\u003e\u003c/a\u003e Update oxc-parser to v0.125.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/752157c78eca6f0a30e5d5cb513b682c5ecfa01e\"\u003e\u003ccode\u003e752157c\u003c/code\u003e\u003c/a\u003e Fix tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/053fd418e180b12fa2014260212fae831f5fc5ec\"\u003e\u003ccode\u003e053fd41\u003c/code\u003e\u003c/a\u003e Bump Prettier dependency to 3.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/904c6365ec46726fd0e21021c52ae934b7e5abc6\"\u003e\u003ccode\u003e904c636\u003c/code\u003e\u003c/a\u003e Clean changelog_unreleased\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/dc1f7fcc508d116cbf1644d69a1f0eb93e40d4a4\"\u003e\u003ccode\u003edc1f7fc\u003c/code\u003e\u003c/a\u003e Update dependents count\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/b31557cf331a02acf83e7e29d1001b070189a0d9\"\u003e\u003ccode\u003eb31557c\u003c/code\u003e\u003c/a\u003e Release 3.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/96bbaeda0525bf758e464aed2f939d739a85c315\"\u003e\u003ccode\u003e96bbaed\u003c/code\u003e\u003c/a\u003e Support Angular v21.2 (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18722\"\u003e#18722\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prettier/prettier/compare/3.8.1...3.8.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/markahope-aag/aviary-roi-calculators/pull/8","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/markahope-aag%2Faviary-roi-calculators/issues/8","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8/packages"}},{"old_version":"1.58.2","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-29T19:09:20.000Z","version_change":"1.58.2 → 1.60.0","issue":{"uuid":"4550968684","node_id":"PR_kwDOP3mI_87gxdD6","number":132,"state":"open","title":"chore(deps-dev)(deps-dev): bump the development-dependencies group across 1 directory with 12 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-29T19:09:20.000Z","updated_at":"2026-05-29T19:09:22.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev)(deps-dev): bump","group_name":"development-dependencies","update_count":12,"packages":[{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tailwindcss/postcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/vite","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@types/node","old_version":"25.3.3","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"autoprefixer","old_version":"10.4.27","new_version":"10.5.0","repository_url":"https://github.com/postcss/autoprefixer"},{"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":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"sass-embedded","old_version":"1.97.3","new_version":"1.100.0","repository_url":"https://github.com/sass/embedded-host-node"},{"name":"tailwindcss","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"typescript-eslint","old_version":"8.56.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"}],"path":null,"ecosystem":"npm"},"body":"Bumps the development-dependencies group with 12 updates in the /frontend directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.1` | `4.3.0` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.1` | `4.3.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.3.3` | `25.9.1` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.27` | `10.5.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| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [sass-embedded](https://github.com/sass/embedded-host-node) | `1.97.3` | `1.100.0` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.1` | `4.3.0` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.56.1` | `8.59.4` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.7` |\n\n\nUpdates `@playwright/test` from 1.58.2 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/postcss` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/postcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/postcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/12eb5ae7b6026ff64c04f889b2221418d772da72\"\u003e\u003ccode\u003e12eb5ae\u003c/code\u003e\u003c/a\u003e Cleanup noisy test output (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4255671c5f792c42808ecd6b2dec27c16e3c559e\"\u003e\u003ccode\u003e4255671\u003c/code\u003e\u003c/a\u003e Improve snapshot tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52f94c74bb491e9c3641ce322a0ef90fb3c45de6\"\u003e\u003ccode\u003e52f94c7\u003c/code\u003e\u003c/a\u003e Improve codebase quality (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19999\"\u003e#19999\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/bfb5732b0b948d89c6803cb537bca168ec8e0a46\"\u003e\u003ccode\u003ebfb5732\u003c/code\u003e\u003c/a\u003e Fall back to the plugin \u003ccode\u003ebase\u003c/code\u003e when PostCSS has no \u003ccode\u003efrom\u003c/code\u003e option (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/3a890c35727fe0630c59b72dbec799d02e3c4800\"\u003e\u003ccode\u003e3a890c3\u003c/code\u003e\u003c/a\u003e Bump dependencies (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-postcss\"\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 \u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/vite` from 4.2.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003e@​tailwindcss/vite's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalizations for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: ensure files are not emptied out when killing the upgrade process while it's running (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: use \u003ccode\u003econfig.content\u003c/code\u003e when migrating from Tailwind CSS v3 to Tailwind CSS v4 (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: never migrate files that are ignored by git (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/vite's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.3.0] - 2026-05-08\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003e@container-size\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/18901\"\u003e#18901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-{auto,thin,none}\u003c/code\u003e utilities for \u003ccode\u003escrollbar-width\u003c/code\u003e, and \u003ccode\u003escrollbar-thumb-*\u003c/code\u003e / \u003ccode\u003escrollbar-track-*\u003c/code\u003e color utilities for \u003ccode\u003escrollbar-color\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19981\"\u003e#19981\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20019\"\u003e#20019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with stacked variants (e.g. \u003ccode\u003e@variant hover:focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow using \u003ccode\u003e@variant\u003c/code\u003e with compound variants (e.g. \u003ccode\u003e@variant hover, focus { … }\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19996\"\u003e#19996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e for functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19989\"\u003e#19989\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure \u003ccode\u003e@plugin\u003c/code\u003e resolves package JavaScript entries instead of browser CSS entries when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix relative \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e paths resolving from the wrong directory when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure CSS files containing \u003ccode\u003e@variant\u003c/code\u003e are processed by \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve imports relative to \u003ccode\u003ebase\u003c/code\u003e when \u003ccode\u003eresult.opts.from\u003c/code\u003e is not provided when using \u003ccode\u003e@tailwindcss/postcss\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19980\"\u003e#19980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve significant \u003ccode\u003e_\u003c/code\u003e whitespace in arbitrary values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: add parentheses when removing whitespace from arbitrary values would hurt readability (e.g. \u003ccode\u003ew-[calc(100%---spacing(60))]\u003c/code\u003e → \u003ccode\u003ew-[calc(100%-(--spacing(60)))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19986\"\u003e#19986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve the original unit in arbitrary values instead of normalizing to base units (e.g. \u003ccode\u003e-mt-[20in]\u003c/code\u003e → \u003ccode\u003emt-[-20in]\u003c/code\u003e, not \u003ccode\u003emt-[-1920px]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19988\"\u003e#19988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate arbitrary \u003ccode\u003e:has()\u003c/code\u003e variants from \u003ccode\u003e[\u0026amp;:has(…)]\u003c/code\u003e to \u003ccode\u003ehas-[…]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19991\"\u003e#19991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade: don’t migrate inline \u003ccode\u003estyle\u003c/code\u003e attributes (e.g. \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e → \u003ccode\u003estyle=\u0026quot;flex-grow: 1\u0026quot;\u003c/code\u003e, not \u003ccode\u003estyle=\u0026quot;grow: 1\u0026quot;\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19918\"\u003e#19918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiple \u003ccode\u003e@utility\u003c/code\u003e definitions with the same name but different value types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19777\"\u003e#19777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExport missing \u003ccode\u003ePluginWithConfig\u003c/code\u003e type from \u003ccode\u003etailwindcss/plugin\u003c/code\u003e to fix errors when inferring plugin config types (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19707\"\u003e#19707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003estart\u003c/code\u003e and \u003ccode\u003eend\u003c/code\u003e legacy utilities without values do not generate CSS (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20003\"\u003e#20003\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure \u003ccode\u003e--value(…)\u003c/code\u003e is required in functional \u003ccode\u003e@utility\u003c/code\u003e definitions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20005\"\u003e#20005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: preserve required whitespace around operators in negated arbitrary values (e.g. \u003ccode\u003e-left-[(var(--a)+var(--b))]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.4] - 2026-04-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure imports in \u003ccode\u003e@import\u003c/code\u003e and \u003ccode\u003e@plugin\u003c/code\u003e still resolve correctly when using Vite aliases in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.3] - 2026-04-20\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCanonicalization: improve canonicalization for \u003ccode\u003etracking-*\u003c/code\u003e utilities by preferring non-negative utilities (e.g. \u003ccode\u003e-tracking-tighter\u003c/code\u003e → \u003ccode\u003etracking-wider\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash due to invalid characters in candidate (exceeding valid unicode code point range) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19829\"\u003e#19829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure query params in imports are considered unique resources when using \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19723\"\u003e#19723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse arbitrary values into shorthand utilities (e.g. \u003ccode\u003epx-[1.2rem] py-[1.2rem]\u003c/code\u003e → \u003ccode\u003ep-[1.2rem]\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eborder-{t,b}-*\u003c/code\u003e into \u003ccode\u003eborder-y-*\u003c/code\u003e, \u003ccode\u003eborder-{l,r}-*\u003c/code\u003e into \u003ccode\u003eborder-x-*\u003c/code\u003e, and \u003ccode\u003eborder-{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003eborder-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-m{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-my-*\u003c/code\u003e, \u003ccode\u003escroll-m{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-mx-*\u003c/code\u003e, and \u003ccode\u003escroll-m{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-m-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003escroll-p{t,b}-*\u003c/code\u003e into \u003ccode\u003escroll-py-*\u003c/code\u003e, \u003ccode\u003escroll-p{l,r}-*\u003c/code\u003e into \u003ccode\u003escroll-px-*\u003c/code\u003e, and \u003ccode\u003escroll-p{t,r,b,l}-*\u003c/code\u003e into \u003ccode\u003escroll-p-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverflow-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverflow-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: collapse \u003ccode\u003eoverscroll-{x,y}-*\u003c/code\u003e into \u003ccode\u003eoverscroll-*\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRead from \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19843\"\u003e#19843\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/tailwindlabs/tailwindcss/commit/588bd7371f4cae96426e1387819b7fd1d99765f9\"\u003e\u003ccode\u003e588bd73\u003c/code\u003e\u003c/a\u003e 4.3.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d194d4c3e656313421f1cfa1954db8f58eec0fcd\"\u003e\u003ccode\u003ed194d4c\u003c/code\u003e\u003c/a\u003e docs: fix various typos in comments and documentation (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19878\"\u003e#19878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/db27049caaae08978995f25b61f8336f543a4640\"\u003e\u003ccode\u003edb27049\u003c/code\u003e\u003c/a\u003e fix(\u003ccode\u003e@​tailwindcss/vite\u003c/code\u003e): include \u003ca href=\"https://github.com/variant\"\u003e\u003ccode\u003e@​variant\u003c/code\u003e\u003c/a\u003e in feature detection (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19966\"\u003e#19966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/5a799900d4b43ca4902398a38c6f0a5b37a98ed9\"\u003e\u003ccode\u003e5a79990\u003c/code\u003e\u003c/a\u003e Always resolve relative files, relative to the current .css file (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19965\"\u003e#19965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/f3fdda2a5cb9de50c897c79003aa58182cd9269b\"\u003e\u003ccode\u003ef3fdda2\u003c/code\u003e\u003c/a\u003e fix(vite): avoid resolving JS plugins to browser CSS entries (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19949\"\u003e#19949\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/69ad7cc5ec091125842aba783c5bfce536e9c234\"\u003e\u003ccode\u003e69ad7cc\u003c/code\u003e\u003c/a\u003e 4.2.4 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/685c19e266a6b75842747acab6fe7076e82df62d\"\u003e\u003ccode\u003e685c19e\u003c/code\u003e\u003c/a\u003e Fix issue around resolving paths in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19947\"\u003e#19947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e3fa490a535a8341fd2853d75098f0d4dbcc825\"\u003e\u003ccode\u003e2e3fa49\u003c/code\u003e\u003c/a\u003e 4.2.3 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/5cb1efdf416a6d37012d31cc1306c41cb35bbdc1\"\u003e\u003ccode\u003e5cb1efd\u003c/code\u003e\u003c/a\u003e fix(vite): resolve tsconfig paths in CSS and JS resolvers (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19803\"\u003e#19803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/d596b0c43d36ad5099c983930fb155e089cbc291\"\u003e\u003ccode\u003ed596b0c\u003c/code\u003e\u003c/a\u003e 4.2.2 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite/issues/19821\"\u003e#19821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-vite\"\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 \u003ccode\u003e@​tailwindcss/vite\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@types/node` from 25.3.3 to 25.9.1\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/node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `autoprefixer` from 10.4.27 to 10.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/postcss/autoprefixer/releases\"\u003eautoprefixer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.5.0 “Each Endeavouring, All Achieving”\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003emask-position-x\u003c/code\u003e and \u003ccode\u003emask-position-y\u003c/code\u003e support (by \u003ca href=\"https://github.com/toporek\"\u003e\u003ccode\u003e@​toporek\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/postcss/autoprefixer/blob/main/CHANGELOG.md\"\u003eautoprefixer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.5.0 “Each Endeavouring, All Achieving”\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003emask-position-x\u003c/code\u003e and \u003ccode\u003emask-position-y\u003c/code\u003e support (by \u003ca href=\"https://github.com/toporek\"\u003e\u003ccode\u003e@​toporek\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/postcss/autoprefixer/commit/faf456a4be572dbcb60cbe5d76a8927e23809ef5\"\u003e\u003ccode\u003efaf456a\u003c/code\u003e\u003c/a\u003e Release 10.5 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/postcss/autoprefixer/commit/b841fc53575a2e8c3dd8d04b0bc5998ee11e7587\"\u003e\u003ccode\u003eb841fc5\u003c/code\u003e\u003c/a\u003e Update dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/postcss/autoprefixer/commit/47d6e68b27009f7cb60513172f765783b55bb000\"\u003e\u003ccode\u003e47d6e68\u003c/code\u003e\u003c/a\u003e Update email\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/postcss/autoprefixer/commit/45cfc0827012fda39b809f1654136e1d5ab7ab25\"\u003e\u003ccode\u003e45cfc08\u003c/code\u003e\u003c/a\u003e Replace ESLint and Prettier to oxlint and oxfmt\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/postcss/autoprefixer/commit/7e3ec7db7274289ccc385fb788bc48f14a4e1dd8\"\u003e\u003ccode\u003e7e3ec7d\u003c/code\u003e\u003c/a\u003e Add prefixing support for mask-position-x and mask-position-y (\u003ca href=\"https://redirect.github.com/postcss/autoprefixer/issues/1548\"\u003e#1548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/postcss/autoprefixer/compare/10.4.27...10.5.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 `prettier` from 3.8.1 to 3.8.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prettier/prettier/releases\"\u003eprettier's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.8.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSCSS: Prevent trailing comma in \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18471\"\u003eprettier/prettier#18471\u003c/a\u003e by \u003ca href=\"https://github.com/kovsu\"\u003e\u003ccode\u003e@​kovsu\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://github.com/prettier/prettier/blob/3.8.3/CHANGELOG.md#383\"\u003eChangelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.8.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Angular v21.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e🔗 \u003ca href=\"https://github.com/prettier/prettier/blob/main/CHANGELOG.md#382\"\u003eChangelog\u003c/a\u003e\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/prettier/prettier/blob/main/CHANGELOG.md\"\u003eprettier's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.8.3\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.8.2...3.8.3\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eSCSS: Prevent trailing comma in \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18471\"\u003e#18471\u003c/a\u003e by \u003ca href=\"https://github.com/kovsu\"\u003e\u003ccode\u003e@​kovsu\u003c/code\u003e\u003c/a\u003e)\u003c/h4\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"scss\"\u003e\u003ccode\u003e// Input\n$value: if(sass(false): 1; else: -1);\n\u003cp\u003e// Prettier 3.8.2\n$value: if(\nsass(false): 1; else: -1,\n);\u003c/p\u003e\n\u003cp\u003e// Prettier 3.8.3\n$value: if(sass(false): 1; else: -1);\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch1\u003e3.8.2\u003c/h1\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/prettier/prettier/compare/3.8.1...3.8.2\"\u003ediff\u003c/a\u003e\u003c/p\u003e\n\u003ch4\u003eAngular: Support Angular v21.2 (\u003ca href=\"https://redirect.github.com/prettier/prettier/pull/18722\"\u003e#18722\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prettier/prettier/pull/19034\"\u003e#19034\u003c/a\u003e by \u003ca href=\"https://github.com/fisker\"\u003e\u003ccode\u003e@​fisker\u003c/code\u003e\u003c/a\u003e)\u003c/h4\u003e\n\u003cp\u003eExhaustive typechecking with \u003ccode\u003e@default never;\u003c/code\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;!-- Input --\u0026gt;\n@switch (foo) {\n  @case (1) {}\n  @default never;\n}\n\u003cp\u003e\u0026lt;!-- Prettier 3.8.1 --\u0026gt;\nSyntaxError: Incomplete block \u0026quot;default never\u0026quot;. If you meant to write the @ character, you should use the \u0026quot;\u0026amp;\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/64\"\u003e#64\u003c/a\u003e;\u0026quot; HTML entity instead. (3:3)\u003c/p\u003e\n\u003cp\u003e\u0026lt;!-- Prettier 3.8.2 --\u0026gt;\n\u003ca href=\"https://github.com/switch\"\u003e\u003ccode\u003e@​switch\u003c/code\u003e\u003c/a\u003e (foo) {\n\u003ca href=\"https://github.com/case\"\u003e\u003ccode\u003e@​case\u003c/code\u003e\u003c/a\u003e (1) {}\n\u003ca href=\"https://github.com/default\"\u003e\u003ccode\u003e@​default\u003c/code\u003e\u003c/a\u003e never;\n}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003earrow function\u003c/code\u003e and \u003ccode\u003einstanceof\u003c/code\u003e expressions.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cpre lang=\"html\"\u003e\u003ccode\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\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/prettier/prettier/commit/d7108a79ec745c04292aabf22c4c1adbd690b191\"\u003e\u003ccode\u003ed7108a7\u003c/code\u003e\u003c/a\u003e Release 3.8.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/177f90898170d363ef64fde663e4d13170688bfe\"\u003e\u003ccode\u003e177f908\u003c/code\u003e\u003c/a\u003e Prevent trailing comma in SCSS \u003ccode\u003eif()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18471\"\u003e#18471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/1cd40668c3d6f2f4cf9d87bbc9096d92361b2606\"\u003e\u003ccode\u003e1cd4066\u003c/code\u003e\u003c/a\u003e Release \u003ccode\u003e@​prettier/plugin-oxc\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/a8700e245038cd8cc0cf28ef06ffedbcb3fc2dfc\"\u003e\u003ccode\u003ea8700e2\u003c/code\u003e\u003c/a\u003e Update oxc-parser to v0.125.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/752157c78eca6f0a30e5d5cb513b682c5ecfa01e\"\u003e\u003ccode\u003e752157c\u003c/code\u003e\u003c/a\u003e Fix tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/053fd418e180b12fa2014260212fae831f5fc5ec\"\u003e\u003ccode\u003e053fd41\u003c/code\u003e\u003c/a\u003e Bump Prettier dependency to 3.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/904c6365ec46726fd0e21021c52ae934b7e5abc6\"\u003e\u003ccode\u003e904c636\u003c/code\u003e\u003c/a\u003e Clean changelog_unreleased\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/dc1f7fcc508d116cbf1644d69a1f0eb93e40d4a4\"\u003e\u003ccode\u003edc1f7fc\u003c/code\u003e\u003c/a\u003e Update dependents count\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/b31557cf331a02acf83e7e29d1001b070189a0d9\"\u003e\u003ccode\u003eb31557c\u003c/code\u003e\u003c/a\u003e Release 3.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prettier/prettier/commit/96bbaeda0525bf758e464aed2f939d739a85c315\"\u003e\u003ccode\u003e96bbaed\u003c/code\u003e\u003c/a\u003e Support Angular v21.2 (\u003ca href=\"https://redirect.github.com/prettier/prettier/issues/18722\"\u003e#18722\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prettier/prettier/compare/3.8.1...3.8.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sass-embedded` from 1.97.3 to 1.100.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md\"\u003esass-embedded's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.100.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eWriting two compound selectors adjacent to one another without any whitespace\nbetween them, such as \u003ccode\u003e[class]a\u003c/code\u003e, is now deprecated. This was always an error\nin CSS and Sass only supported it by mistake.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://sass-lang.com/d/adjacent-compounds\"\u003ethe Sass website\u003c/a\u003e for\ndetails.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.99.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for parent selectors (\u003ccode\u003e\u0026amp;\u003c/code\u003e) at the root of the document. These are\nemitted as-is in the CSS output, where they're interpreted as \u003ca href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors/Nesting_selector#using_outside_nested_rule\"\u003ethe scoping\nroot\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUser-defined functions named \u003ccode\u003ecalc\u003c/code\u003e or \u003ccode\u003eclamp\u003c/code\u003e are no longer forbidden. If\nsuch a function exists without a namespace in the current module, it will be\nused instead of the built-in \u003ccode\u003ecalc()\u003c/code\u003e or \u003ccode\u003eclamp()\u003c/code\u003e function.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUser-defined functions whose names begin with \u003ccode\u003e-\u003c/code\u003e and end with \u003ccode\u003e-expression\u003c/code\u003e,\n\u003ccode\u003e-url\u003c/code\u003e, \u003ccode\u003e-and\u003c/code\u003e, \u003ccode\u003e-or\u003c/code\u003e, or \u003ccode\u003e-not\u003c/code\u003e are no longer forbidden. These were\noriginally intended to match vendor prefixes, but in practice no vendor\nprefixes for these functions ever exis...\n\n_Description has been truncated_","html_url":"https://github.com/b310-digital/groupwriter/pull/132","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/b310-digital%2Fgroupwriter/issues/132","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/132/packages"}},{"old_version":"1.56.1","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-29T17:08:50.000Z","version_change":"1.56.1 → 1.60.0","issue":{"uuid":"4550247728","node_id":"PR_kwDOP3Td2M7gvGDz","number":304,"state":"closed","title":"chore(deps-dev): bump the qa-tooling group across 1 directory with 2 updates","user":"dependabot[bot]","labels":["dependencies","npm"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":"2026-05-29T22:33:39.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T17:08:50.000Z","updated_at":"2026-05-29T22:33:39.000Z","time_to_close":19489,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"qa-tooling","update_count":2,"packages":[{"name":"@cucumber/cucumber","old_version":"11.3.0","new_version":"12.9.0","repository_url":"https://github.com/cucumber/cucumber-js"},{"name":"@playwright/test","old_version":"1.56.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"}],"path":null,"ecosystem":"npm"},"body":"Bumps the qa-tooling group with 2 updates in the / directory: [@cucumber/cucumber](https://github.com/cucumber/cucumber-js) and [@playwright/test](https://github.com/microsoft/playwright).\n\nUpdates `@cucumber/cucumber` from 11.3.0 to 12.9.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/cucumber/cucumber-js/releases\"\u003e@​cucumber/cucumber's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev12.9.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEmit new \u003ccode\u003epublish:url\u003c/code\u003e event for plugins (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2808\"\u003e#2808\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.8.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle thrown strings correctly (partial backport from \u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2708\"\u003e#2708\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude assertion info in stack trace (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2803\"\u003e#2803\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.8.2\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eVarious dependency updates\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.8.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResolve dependency issue with \u003ccode\u003ejunit-xml-formatter\u003c/code\u003e and \u003ccode\u003equery\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/cucumber/junit-xml-formatter/pull/143\"\u003ejunit-xml-formatter#143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.8.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport custom externalising option (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2780\"\u003e#2780\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.7.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn about merged paths from config and CLI (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2759\"\u003e#2759\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle ESM when building source references (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2740\"\u003e#2740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix error type resolution (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2744\"\u003e#2744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure that environment variables reach child processes in parallel mode (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2752\"\u003e#2752\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.6.0\u003c/h2\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate colorsEnabled format option in favour of environment variables (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2729\"\u003e#2729\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.5.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow external plugins (see \u003ca href=\"https://github.com/cucumber/cucumber-js/blob/HEAD/docs/plugins.md\"\u003edocumentation\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2715\"\u003e#2715\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.4.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow loading config files in TypeScript format (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2709\"\u003e#2709\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompress report content with gzip before publishing (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2687\"\u003e#2687\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.3.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Node.js 25.x (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2704\"\u003e#2704\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport named BeforeAll/AfterAll hooks (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2661\"\u003e#2661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmit messages for test run hooks (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2644\"\u003e#2644\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/cucumber/cucumber-js/blob/main/CHANGELOG.md\"\u003e@​cucumber/cucumber's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[12.9.0] - 2026-05-15\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEmit new \u003ccode\u003epublish:url\u003c/code\u003e event for plugins (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2808\"\u003e#2808\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.8.3] - 2026-05-09\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle thrown strings correctly (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2708\"\u003e#2708\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude assertion info in stack trace (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2803\"\u003e#2803\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.8.2] - 2026-04-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eVarious dependency updates\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.8.1] - 2026-04-14\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResolve dependency issue with \u003ccode\u003ejunit-xml-formatter\u003c/code\u003e and \u003ccode\u003equery\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/cucumber/junit-xml-formatter/pull/143\"\u003ejunit-xml-formatter#143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.8.0] - 2026-04-12\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport custom externalising option (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2780\"\u003e#2780\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.7.0] - 2026-02-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn about merged paths from config and CLI (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2759\"\u003e#2759\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle ESM when building source references (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2740\"\u003e#2740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix error type resolution (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2744\"\u003e#2744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure that environment variables reach child processes in parallel mode (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2752\"\u003e#2752\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.6.0] - 2026-01-22\u003c/h2\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate colorsEnabled format option in favour of environment variables (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2729\"\u003e#2729\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.5.0] - 2025-12-26\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow external plugins (see \u003ca href=\"https://github.com/cucumber/cucumber-js/blob/main/docs/plugins.md\"\u003edocumentation\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2715\"\u003e#2715\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.4.0] - 2025-12-13\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow loading config files in TypeScript format (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2709\"\u003e#2709\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCompress report content with gzip before publishing (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2687\"\u003e#2687\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[12.3.0] - 2025-12-01\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Node.js 25.x (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2704\"\u003e#2704\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport named BeforeAll/AfterAll hooks (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2661\"\u003e#2661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmit messages for test run hooks (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/pull/2644\"\u003e#2644\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/cucumber/cucumber-js/commit/a09aea30597448b31b6acf447984f9bba2753c94\"\u003e\u003ccode\u003ea09aea3\u003c/code\u003e\u003c/a\u003e Prepare release v12.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/a5207d900d30a0e2fee436b64f17617ecd7a5242\"\u003e\u003ccode\u003ea5207d9\u003c/code\u003e\u003c/a\u003e Rework integration with Cucumber Reports (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/issues/2808\"\u003e#2808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/e7b78d5b1b93bd08a94bd800ed985491b675a473\"\u003e\u003ccode\u003ee7b78d5\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/995df9a65511dfc2cf463581d431788b5c9727f6\"\u003e\u003ccode\u003e995df9a\u003c/code\u003e\u003c/a\u003e Prepare release v12.8.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/7a762cd5b971bbf07b3d28e7bc194533bb024e34\"\u003e\u003ccode\u003e7a762cd\u003c/code\u003e\u003c/a\u003e Include assertion info in stack trace, handle thrown strings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/6b60ec22ba535949f98d74de067116e53eb1a1e8\"\u003e\u003ccode\u003e6b60ec2\u003c/code\u003e\u003c/a\u003e Prepare release v12.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/4849a966214a9b133db17a3c6f010e6c82761b3a\"\u003e\u003ccode\u003e4849a96\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/1c7b05d9c62c129f33b03994d5cd48376c1c29d1\"\u003e\u003ccode\u003e1c7b05d\u003c/code\u003e\u003c/a\u003e Correct advice for ESM with tsx (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/issues/2796\"\u003e#2796\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/b382bc6802ccf6a9281c118b64d6a4477c455948\"\u003e\u003ccode\u003eb382bc6\u003c/code\u003e\u003c/a\u003e Bump brace-expansion (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/issues/2795\"\u003e#2795\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cucumber/cucumber-js/commit/68654946fa43c15ae34da4c63edaa126705ed5a1\"\u003e\u003ccode\u003e6865494\u003c/code\u003e\u003c/a\u003e Update dependency fs-extra to v11 (\u003ca href=\"https://redirect.github.com/cucumber/cucumber-js/issues/2791\"\u003e#2791\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/cucumber/cucumber-js/compare/v11.3.0...v12.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 \u003ccode\u003e@​cucumber/cucumber\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@playwright/test` from 1.56.1 to 1.60.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/playwright/releases\"\u003e@​playwright/test's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.60.0\u003c/h2\u003e\n\u003ch2\u003e🌐 HAR recording on Tracing\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-start-har\"\u003etracing.startHar()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-tracing#tracing-stop-har\"\u003etracing.stopHar()\u003c/a\u003e expose HAR recording as a first-class tracing API, with the same \u003ccode\u003econtent\u003c/code\u003e, \u003ccode\u003emode\u003c/code\u003e and \u003ccode\u003eurlFilter\u003c/code\u003e options as \u003ccode\u003erecordHar\u003c/code\u003e. The returned \u003ca href=\"https://playwright.dev/docs/api/class-disposable\"\u003eDisposable\u003c/a\u003e makes it easy to scope a recording with \u003ccode\u003eawait using\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait using har = await context.tracing.startHar('trace.har');\r\nconst page = await context.newPage();\r\nawait page.goto('https://playwright.dev');\r\n// HAR is finalized when `har` goes out of scope.\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003e🪝 Drop API\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-drop\"\u003elocator.drop()\u003c/a\u003e simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches \u003ccode\u003edragenter\u003c/code\u003e, \u003ccode\u003edragover\u003c/code\u003e, and \u003ccode\u003edrop\u003c/code\u003e with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.locator('#dropzone').drop({\r\n  files: { name: 'note.txt', mimeType: 'text/plain', buffer: Buffer.from('hello') },\r\n});\r\n\u003cp\u003eawait page.locator('#dropzone').drop({\ndata: {\n'text/plain': 'hello world',\n'text/uri-list': '\u003ca href=\"https://example.com\"\u003ehttps://example.com\u003c/a\u003e',\n},\n});\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003e🎯 Aria snapshots\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://playwright.dev/docs/api/class-pageassertions#page-assertions-to-match-aria-snapshot\"\u003eexpect(page).toMatchAriaSnapshot()\u003c/a\u003e now works on a \u003ca href=\"https://playwright.dev/docs/api/class-page\"\u003ePage\u003c/a\u003e, in addition to a \u003ca href=\"https://playwright.dev/docs/api/class-locator\"\u003eLocator\u003c/a\u003e — equivalent to asserting against \u003ccode\u003epage.locator('body')\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003eboxes\u003c/code\u003e option on \u003ca href=\"https://playwright.dev/docs/api/class-locator#locator-aria-snapshot\"\u003elocator.ariaSnapshot()\u003c/a\u003e / \u003ca href=\"https://playwright.dev/docs/api/class-page#page-aria-snapshot\"\u003epage.ariaSnapshot()\u003c/a\u003e appends each element's bounding box as \u003ccode\u003e[box=x,y,width,height]\u003c/code\u003e, useful for AI consumption.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛑 test.abort()\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-test#test-abort\"\u003etest.abort()\u003c/a\u003e aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003etest('does not publish to the shared page', async ({ page }) =\u0026gt; {\r\n  await page.route('**/publish', route =\u0026gt; {\r\n    test.abort('Tests must not publish to the shared page. Use the `clone` option.');\r\n    return route.abort();\r\n  });\r\n  // ...\r\n});\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eNew APIs\u003c/h2\u003e\n\u003ch3\u003eBrowser, Context and Page\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/microsoft/playwright/commit/87bb9ddbd78f329df18c2b24847bc9409240cd07\"\u003e\u003ccode\u003e87bb9dd\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40747\"\u003e#40747\u003c/a\u003e): fix(yauzl): vendor yauzl with destroy-lifecycle fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9a9c51cb7d1b39fab51ca288e59f8ca38fd19910\"\u003e\u003ccode\u003e9a9c51c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40733\"\u003e#40733\u003c/a\u003e): chore(electron): revert \u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40184\"\u003e#40184\u003c/a\u003e (move Electron API to a s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/4b3b628663031bcaaeca907e337892263524634d\"\u003e\u003ccode\u003e4b3b628\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40736\"\u003e#40736\u003c/a\u003e): Revert \u0026quot;feat(electron): add timeout option to electronAp...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f869f96bbe6607cc3b88b4ca96fd82f17b301b50\"\u003e\u003ccode\u003ef869f96\u003c/code\u003e\u003c/a\u003e chore: bump version to v1.60.0 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40714\"\u003e#40714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/7eb6918afadfb0dd5c7e94ca9ffbddd84d8fbb39\"\u003e\u003ccode\u003e7eb6918\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40710\"\u003e#40710\u003c/a\u003e): docs: release notes v1.60\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/118d2aa6076d82840decca15d96b48611b08e392\"\u003e\u003ccode\u003e118d2aa\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40693\"\u003e#40693\u003c/a\u003e): chore(python): formdata path type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/54012f5dcc586da2e5d6cccd75f13ca367b94579\"\u003e\u003ccode\u003e54012f5\u003c/code\u003e\u003c/a\u003e chore(deps): bump ip-address and express-rate-limit (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40680\"\u003e#40680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9fa531da5677a3807d6e1dccd22c5137339a44f7\"\u003e\u003ccode\u003e9fa531d\u003c/code\u003e\u003c/a\u003e fix(screencast): unblock frame ack when an async client disconnects (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40674\"\u003e#40674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/3649db560ff943e724185784d34f7db131a11961\"\u003e\u003ccode\u003e3649db5\u003c/code\u003e\u003c/a\u003e chore(mcp): bump default extension protocol to v2 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40678\"\u003e#40678\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/bb6c00957f47ba04caad7fca75d426309a2d32d4\"\u003e\u003ccode\u003ebb6c009\u003c/code\u003e\u003c/a\u003e chore(extension): mark 0.2.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40679\"\u003e#40679\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.56.1...v1.60.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/kevinrapley/ResearchOps/pull/304","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinrapley%2FResearchOps/issues/304","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/304/packages"}},{"old_version":"1.58.2","new_version":"1.60.0","update_type":"minor","path":null,"pr_created_at":"2026-05-29T05:12:36.000Z","version_change":"1.58.2 → 1.60.0","issue":{"uuid":"4545849932","node_id":"PR_kwDOLzxzKM7gglkO","number":348,"state":"closed","title":"chore(deps): bump the dependencies group across 1 directory with 46 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-30T20:19:09.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-29T05:12:36.000Z","updated_at":"2026-05-30T20:19:11.000Z","time_to_close":140793,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"dependencies","update_count":46,"packages":[{"name":"@codemirror/autocomplete","old_version":"6.20.1","new_version":"6.20.2","repository_url":"https://github.com/codemirror/autocomplete"},{"name":"@codemirror/lint","old_version":"6.9.5","new_version":"6.9.6","repository_url":"https://github.com/codemirror/lint"},{"name":"@codemirror/search","old_version":"6.6.0","new_version":"6.7.0","repository_url":"https://github.com/codemirror/search"},{"name":"@fortawesome/react-fontawesome","old_version":"3.3.0","new_version":"3.3.1","repository_url":"https://github.com/FortAwesome/react-fontawesome"},{"name":"@lingui/core","old_version":"5.9.3","new_version":"6.1.0","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/react","old_version":"5.9.3","new_version":"6.1.0","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@sentry/react","old_version":"10.46.0","new_version":"10.53.1","repository_url":"https://github.com/getsentry/sentry-javascript"},{"name":"@tabler/icons-react","old_version":"3.40.0","new_version":"3.44.0","repository_url":"https://github.com/tabler/tabler-icons"},{"name":"@tanstack/react-query","old_version":"5.95.2","new_version":"5.100.11","repository_url":"https://github.com/TanStack/query"},{"name":"@uiw/codemirror-theme-vscode","old_version":"4.25.9","new_version":"4.25.10","repository_url":"https://github.com/uiwjs/react-codemirror"},{"name":"@uiw/react-codemirror","old_version":"4.25.9","new_version":"4.25.10","repository_url":"https://github.com/uiwjs/react-codemirror"},{"name":"@vanilla-extract/css","old_version":"1.20.0","new_version":"1.20.1","repository_url":"https://github.com/vanilla-extract-css/vanilla-extract"},{"name":"axios","old_version":"1.15.2","new_version":"1.16.1","repository_url":"https://github.com/axios/axios"},{"name":"dompurify","old_version":"3.4.0","new_version":"3.4.5","repository_url":"https://github.com/cure53/DOMPurify"},{"name":"easymde","old_version":"2.20.0","new_version":"2.21.0","repository_url":"https://github.com/Ionaru/easy-markdown-editor"},{"name":"fuse.js","old_version":"7.1.0","new_version":"7.3.0","repository_url":"https://github.com/krisk/Fuse"},{"name":"mantine-datatable","old_version":"9.2.0","new_version":"9.2.2","repository_url":"https://github.com/icflorescu/mantine-datatable"},{"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":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-grid-layout","old_version":"1.4.4","new_version":"2.2.3","repository_url":"https://github.com/STRML/react-grid-layout"},{"name":"@types/react-grid-layout","old_version":"1.3.6","new_version":"2.1.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"react-hook-form","old_version":"7.72.0","new_version":"7.76.0","repository_url":"https://github.com/react-hook-form/react-hook-form"},{"name":"react-is","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-router-dom","old_version":"6.30.3","new_version":"7.15.1","repository_url":"https://github.com/remix-run/react-router"},{"name":"react-window","old_version":"1.8.11","new_version":"2.2.7","repository_url":"https://github.com/bvaughn/react-window"},{"name":"@types/react-window","old_version":"1.8.8","new_version":"2.0.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"styled-components","old_version":"6.3.12","new_version":"6.4.2","repository_url":"https://github.com/styled-components/styled-components"},{"name":"undici","old_version":"6.24.1","new_version":"8.3.0","repository_url":"https://github.com/nodejs/undici"},{"name":"zustand","old_version":"5.0.12","new_version":"5.0.13","repository_url":"https://github.com/pmndrs/zustand"},{"name":"@codecov/vite-plugin","old_version":"1.9.1","new_version":"2.0.1"},{"name":"@lingui/babel-plugin-lingui-macro","old_version":"5.9.3","new_version":"6.1.0","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/cli","old_version":"5.9.3","new_version":"6.1.0","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/macro","old_version":"5.9.3","new_version":"5.9.5","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@types/node","old_version":"25.5.0","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@vanilla-extract/vite-plugin","old_version":"5.2.1","new_version":"5.2.2","repository_url":"https://github.com/vanilla-extract-css/vanilla-extract"},{"name":"@vitejs/plugin-react","old_version":"5.2.0","new_version":"6.0.2","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"otpauth","old_version":"9.5.0","new_version":"9.5.1","repository_url":"https://github.com/hectorm/otpauth"},{"name":"rollup","old_version":"4.60.0","new_version":"4.60.4","repository_url":"https://github.com/rollup/rollup"},{"name":"rollup-plugin-license","old_version":"3.7.0","new_version":"3.7.1","repository_url":"https://github.com/mjeanroy/rollup-plugin-license"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"vite","old_version":"6.4.2","new_version":"8.0.14","repository_url":"https://github.com/vitejs/vite"},{"name":"vite-plugin-dts","old_version":"4.5.4","new_version":"5.0.1","repository_url":"https://github.com/qmhc/unplugin-dts"},{"name":"vite-plugin-istanbul","old_version":"8.0.0","new_version":"9.0.0","repository_url":"https://github.com/iFaxity/vite-plugin-istanbul"}],"path":null,"ecosystem":"npm"},"body":"Bumps the dependencies group with 45 updates in the /src/frontend directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@codemirror/autocomplete](https://github.com/codemirror/autocomplete) | `6.20.1` | `6.20.2` |\n| [@codemirror/lint](https://github.com/codemirror/lint) | `6.9.5` | `6.9.6` |\n| [@codemirror/search](https://github.com/codemirror/search) | `6.6.0` | `6.7.0` |\n| [@fortawesome/react-fontawesome](https://github.com/FortAwesome/react-fontawesome) | `3.3.0` | `3.3.1` |\n| [@lingui/core](https://github.com/lingui/js-lingui/tree/HEAD/packages/core) | `5.9.3` | `6.1.0` |\n| [@lingui/react](https://github.com/lingui/js-lingui/tree/HEAD/packages/react) | `5.9.3` | `6.1.0` |\n| [@sentry/react](https://github.com/getsentry/sentry-javascript) | `10.46.0` | `10.53.1` |\n| [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) | `3.40.0` | `3.44.0` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.95.2` | `5.100.11` |\n| [@uiw/codemirror-theme-vscode](https://github.com/uiwjs/react-codemirror) | `4.25.9` | `4.25.10` |\n| [@uiw/react-codemirror](https://github.com/uiwjs/react-codemirror) | `4.25.9` | `4.25.10` |\n| [@vanilla-extract/css](https://github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/css) | `1.20.0` | `1.20.1` |\n| [axios](https://github.com/axios/axios) | `1.15.2` | `1.16.1` |\n| [dompurify](https://github.com/cure53/DOMPurify) | `3.4.0` | `3.4.5` |\n| [easymde](https://github.com/Ionaru/easy-markdown-editor) | `2.20.0` | `2.21.0` |\n| [fuse.js](https://github.com/krisk/Fuse) | `7.1.0` | `7.3.0` |\n| [mantine-datatable](https://github.com/icflorescu/mantine-datatable) | `9.2.0` | `9.2.2` |\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| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [react-grid-layout](https://github.com/STRML/react-grid-layout) | `1.4.4` | `2.2.3` |\n| [@types/react-grid-layout](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-grid-layout) | `1.3.6` | `2.1.0` |\n| [react-hook-form](https://github.com/react-hook-form/react-hook-form) | `7.72.0` | `7.76.0` |\n| [react-is](https://github.com/facebook/react/tree/HEAD/packages/react-is) | `19.2.4` | `19.2.6` |\n| [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) | `6.30.3` | `7.15.1` |\n| [react-window](https://github.com/bvaughn/react-window) | `1.8.11` | `2.2.7` |\n| [@types/react-window](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-window) | `1.8.8` | `2.0.0` |\n| [styled-components](https://github.com/styled-components/styled-components) | `6.3.12` | `6.4.2` |\n| [undici](https://github.com/nodejs/undici) | `6.24.1` | `8.3.0` |\n| [zustand](https://github.com/pmndrs/zustand) | `5.0.12` | `5.0.13` |\n| @codecov/vite-plugin | `1.9.1` | `2.0.1` |\n| [@lingui/babel-plugin-lingui-macro](https://github.com/lingui/js-lingui/tree/HEAD/packages/babel-plugin-lingui-macro) | `5.9.3` | `6.1.0` |\n| [@lingui/cli](https://github.com/lingui/js-lingui/tree/HEAD/packages/cli) | `5.9.3` | `6.1.0` |\n| [@lingui/macro](https://github.com/lingui/js-lingui/tree/HEAD/packages/macro) | `5.9.3` | `5.9.5` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.60.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.5.0` | `25.9.1` |\n| [@vanilla-extract/vite-plugin](https://github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/vite-plugin) | `5.2.1` | `5.2.2` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.2.0` | `6.0.2` |\n| [otpauth](https://github.com/hectorm/otpauth) | `9.5.0` | `9.5.1` |\n| [rollup](https://github.com/rollup/rollup) | `4.60.0` | `4.60.4` |\n| [rollup-plugin-license](https://github.com/mjeanroy/rollup-plugin-license) | `3.7.0` | `3.7.1` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `6.4.2` | `8.0.14` |\n| [vite-plugin-dts](https://github.com/qmhc/unplugin-dts/tree/HEAD/packages/vite-plugin-dts) | `4.5.4` | `5.0.1` |\n| [vite-plugin-istanbul](https://github.com/iFaxity/vite-plugin-istanbul) | `8.0.0` | `9.0.0` |\n\n\nUpdates `@codemirror/autocomplete` from 6.20.1 to 6.20.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/codemirror/autocomplete/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@codemirror/lint` from 6.9.5 to 6.9.6\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/codemirror/lint/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@codemirror/search` from 6.6.0 to 6.7.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/codemirror/search/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@codemirror/view` from 6.40.0 to 6.43.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/codemirror/view/blob/main/CHANGELOG.md\"\u003e@​codemirror/view's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.41.0 (2026-04-01)\u003c/h2\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cp\u003eFix an issue where \u003ccode\u003eEditorView.posAtCoords\u003c/code\u003e could incorrectly return a position near a higher element on the line, in mixed-font-size lines.\u003c/p\u003e\n\u003cp\u003eExpand the workaround for the Webkit bug that causes nonexistent selections to stay visible to be active on non-Safari Webkit browsers.\u003c/p\u003e\n\u003ch3\u003eNew features\u003c/h3\u003e\n\u003cp\u003eThe new \u003ccode\u003eEditorView.cursorScrollMargin\u003c/code\u003e facet can now be used to configure the extra space used when scrolling the cursor into view.\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/codemirror/view/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@fortawesome/react-fontawesome` from 3.3.0 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/FortAwesome/react-fontawesome/releases\"\u003e@​fortawesome/react-fontawesome's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.3.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/compare/v3.3.0...v3.3.1\"\u003e3.3.1\u003c/a\u003e (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eJust a few dependency bumps to close off CVEs (not that our lib is really affected anyway).\u003c/p\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump handlebars from 4.7.8 to 4.7.9 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/f1d6d943d0f1a014c5cec77d244fc021c0a09c93\"\u003ef1d6d94\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump lodash-es from 4.17.23 to 4.18.1 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/212496a5b3cc2a054da0400db608296e8ac59c4c\"\u003e212496a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump picomatch from 2.3.1 to 2.3.2 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/557ceaf5f47b45df48bb70385ecbe54aa0eb340f\"\u003e557ceaf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e bump lodash from 4.17.23 to 4.18.1 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/2d06890530c90d019f33b5c361f436deb13261f9\"\u003e2d06890\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e node 22.22.2, bump all dev dependencies (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/99ba500ede9a68c3973c1fe0d6c2475d9d40b699\"\u003e99ba500\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/FortAwesome/react-fontawesome/blob/main/CHANGELOG.md\"\u003e@​fortawesome/react-fontawesome's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/compare/v3.3.0...v3.3.1\"\u003e3.3.1\u003c/a\u003e (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump handlebars from 4.7.8 to 4.7.9 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/f1d6d943d0f1a014c5cec77d244fc021c0a09c93\"\u003ef1d6d94\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump lodash-es from 4.17.23 to 4.18.1 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/212496a5b3cc2a054da0400db608296e8ac59c4c\"\u003e212496a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps-dev:\u003c/strong\u003e bump picomatch from 2.3.1 to 2.3.2 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/557ceaf5f47b45df48bb70385ecbe54aa0eb340f\"\u003e557ceaf\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e bump lodash from 4.17.23 to 4.18.1 (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/2d06890530c90d019f33b5c361f436deb13261f9\"\u003e2d06890\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edeps:\u003c/strong\u003e node 22.22.2, bump all dev dependencies (\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/99ba500ede9a68c3973c1fe0d6c2475d9d40b699\"\u003e99ba500\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/FortAwesome/react-fontawesome/commit/75b30aa58036501e94272d024e942a6773ba0d2e\"\u003e\u003ccode\u003e75b30aa\u003c/code\u003e\u003c/a\u003e chore(release): 3.3.1 [skip ci]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/99ba500ede9a68c3973c1fe0d6c2475d9d40b699\"\u003e\u003ccode\u003e99ba500\u003c/code\u003e\u003c/a\u003e chore(deps): node 22.22.2, bump all dev dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/31a2676d1a2c00d7e055c05fa7ead879af1824ed\"\u003e\u003ccode\u003e31a2676\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FortAwesome/react-fontawesome/issues/639\"\u003e#639\u003c/a\u003e from FortAwesome/dependabot/npm_and_yarn/lodash-4.18.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/2d06890530c90d019f33b5c361f436deb13261f9\"\u003e\u003ccode\u003e2d06890\u003c/code\u003e\u003c/a\u003e chore(deps): bump lodash from 4.17.23 to 4.18.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/741a193caf218a7baa647de11c0f3226ddd83b95\"\u003e\u003ccode\u003e741a193\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FortAwesome/react-fontawesome/issues/638\"\u003e#638\u003c/a\u003e from FortAwesome/dependabot/npm_and_yarn/lodash-es-4....\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/212496a5b3cc2a054da0400db608296e8ac59c4c\"\u003e\u003ccode\u003e212496a\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump lodash-es from 4.17.23 to 4.18.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/8deeceba85ccc678c062a20a4cfa22d945e89930\"\u003e\u003ccode\u003e8deeceb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FortAwesome/react-fontawesome/issues/636\"\u003e#636\u003c/a\u003e from FortAwesome/dependabot/npm_and_yarn/handlebars-4...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/5df5ade7c54e873fe9b64de017f6a9b89f264a2e\"\u003e\u003ccode\u003e5df5ade\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/FortAwesome/react-fontawesome/issues/635\"\u003e#635\u003c/a\u003e from FortAwesome/dependabot/npm_and_yarn/picomatch-2.3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/f1d6d943d0f1a014c5cec77d244fc021c0a09c93\"\u003e\u003ccode\u003ef1d6d94\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump handlebars from 4.7.8 to 4.7.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FortAwesome/react-fontawesome/commit/557ceaf5f47b45df48bb70385ecbe54aa0eb340f\"\u003e\u003ccode\u003e557ceaf\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump picomatch from 2.3.1 to 2.3.2\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/FortAwesome/react-fontawesome/compare/v3.3.0...v3.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@lingui/core` from 5.9.3 to 6.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lingui/js-lingui/releases\"\u003e@​lingui/core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.1.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.1...v6.1.0\"\u003e6.1.0\u003c/a\u003e (2026-05-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003elingui-set\u003c/code\u003e/\u003ccode\u003elingui-reset\u003c/code\u003e comment directives (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2514\"\u003e#2514\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e96a52e8\u003c/a\u003e) (\u003ca href=\"https://lingui.dev/ref/macro#lingui-directive\"\u003eDocumentation\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edisappearing placeholder comments in partial extract (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2543\"\u003e#2543\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/725a2bf4d0b0cbf5d405d6e9ed79efa391bdd572\"\u003e725a2bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.0.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0...v6.0.1\"\u003e6.0.1\u003c/a\u003e (2026-04-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eavoid throwing on object spreads in extractFromObjectExpression (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2538\"\u003e#2538\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/7cbc0a8638e1cc2f5ea702922b46156c0555fe29\"\u003e7cbc0a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecli:\u003c/strong\u003e declare files arguments (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2532\"\u003e#2532\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/4a55abe7b3d046b972cb26a3c5a11acf397f1d7a\"\u003e4a55abe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003ev6.0.0\u003c/a\u003e\u003c/h1\u003e\n\u003cp\u003eWe are pleased to announce the release of \u003cstrong\u003eLingui 6.0\u003c/strong\u003e ✨\u003c/p\u003e\n\u003cp\u003eThis release marks a \u003cstrong\u003emajor milestone\u003c/strong\u003e for the project. It includes a transition to ESM-only distribution, reduced dependency graph, the removal of deprecated APIs, and improved TypeScript support. A few new features have also been introduced.\u003c/p\u003e\n\u003cp\u003eCheck out the links below for more details:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/blog/2026/04/22/announcing-lingui-6.0\"\u003eBlog Post: Announcing Lingui 6.0\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/releases/migration-6\"\u003eMigration Guide from 5.x to 6.x\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003eFull Changelog\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDiscussion\u003c/h2\u003e\n\u003cp\u003eIf you have any questions or suggestions regarding this release, please visit the \u003ca href=\"https://github.com/lingui/js-lingui/discussions/2455\"\u003eRelated Discussion\u003c/a\u003e or our \u003ca href=\"https://discord.gg/tBZqKpeF\"\u003eDiscord Server\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003ev6.0.0-next.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0-next.3...v6.0.0-next.4\"\u003ev6.0.0-next.4\u003c/a\u003e (2026-04-17)\u003c/h2\u003e\n\u003cp\u003eVisit the \u003ca href=\"https://js-lingui-git-next-crowdin.vercel.app\"\u003ev6 website deployment\u003c/a\u003e to see the relevant docs, including the \u003ca href=\"https://js-lingui-git-next-crowdin.vercel.app/releases/migration-6\"\u003emigration guide from 5.x to 6.x\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003econsolidate metadata transformation options into \u003ccode\u003edescriptorFields\u003c/code\u003e (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2513\"\u003e#2513\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\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/lingui/js-lingui/blob/main/packages/core/CHANGELOG.md\"\u003e@​lingui/core's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.1...v6.1.0\"\u003e6.1.0\u003c/a\u003e (2026-05-21)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd lingui-set/lingui-reset comment directives (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2514\"\u003e#2514\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e96a52e8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0...v6.0.1\"\u003e6.0.1\u003c/a\u003e (2026-04-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/core\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003e6.0.0\u003c/a\u003e (2026-04-22)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/blog/2026/04/22/announcing-lingui-6.0\"\u003eAnnouncing Lingui 6.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.4...v5.9.5\"\u003e5.9.5\u003c/a\u003e (2026-04-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/core\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.3...v5.9.4\"\u003e5.9.4\u003c/a\u003e (2026-03-27)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/core\u003c/code\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/lingui/js-lingui/commit/46a340af0dbfc8e4ac483cc607c2b24ac48ab56b\"\u003e\u003ccode\u003e46a340a\u003c/code\u003e\u003c/a\u003e chore(release): published v6.1.0 [skip ci] (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2550\"\u003e#2550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e\u003ccode\u003e96a52e8\u003c/code\u003e\u003c/a\u003e feat: add lingui-set/lingui-reset comment directives (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2514\"\u003e#2514\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/a710fd3c6dca7406a5b0ee219e99474586e93e59\"\u003e\u003ccode\u003ea710fd3\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.1 [skip ci] (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2541\"\u003e#2541\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/b91bb94b6fc59c85d460a4d403be41e70d11b717\"\u003e\u003ccode\u003eb91bb94\u003c/code\u003e\u003c/a\u003e chore: update tooling: Yarn, Vitest (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2539\"\u003e#2539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/a194ab486dd979c42b39d90c80e5c3e2283bf8c7\"\u003e\u003ccode\u003ea194ab4\u003c/code\u003e\u003c/a\u003e chore: official v6 release (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2500\"\u003e#2500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/9216f052768abd987bae67451eef512cf047c152\"\u003e\u003ccode\u003e9216f05\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.4 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2521\"\u003e#2521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/1597e3a3321f02a668285bec3f5e9b24c1ef2765\"\u003e\u003ccode\u003e1597e3a\u003c/code\u003e\u003c/a\u003e chore: improve public package descriptions and keywords (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/ebcb6dc8e8d327ae5775cadee931942ef309480f\"\u003e\u003ccode\u003eebcb6dc\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.3 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/4b244312eb16e94451a33f6dac60ecdbb55d6f74\"\u003e\u003ccode\u003e4b24431\u003c/code\u003e\u003c/a\u003e feat(vite-plugin): Vite 8 compatibility + linguiTransformerBabelPreset (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2487\"\u003e#2487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/f4bcdd555ceef0bed58b2f3075096efd4daaeec2\"\u003e\u003ccode\u003ef4bcdd5\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.2 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2485\"\u003e#2485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lingui/js-lingui/commits/v6.1.0/packages/core\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@lingui/react` from 5.9.3 to 6.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lingui/js-lingui/releases\"\u003e@​lingui/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.1.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.1...v6.1.0\"\u003e6.1.0\u003c/a\u003e (2026-05-21)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003elingui-set\u003c/code\u003e/\u003ccode\u003elingui-reset\u003c/code\u003e comment directives (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2514\"\u003e#2514\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e96a52e8\u003c/a\u003e) (\u003ca href=\"https://lingui.dev/ref/macro#lingui-directive\"\u003eDocumentation\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edisappearing placeholder comments in partial extract (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2543\"\u003e#2543\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/725a2bf4d0b0cbf5d405d6e9ed79efa391bdd572\"\u003e725a2bf\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.0.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0...v6.0.1\"\u003e6.0.1\u003c/a\u003e (2026-04-30)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eavoid throwing on object spreads in extractFromObjectExpression (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2538\"\u003e#2538\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/7cbc0a8638e1cc2f5ea702922b46156c0555fe29\"\u003e7cbc0a8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecli:\u003c/strong\u003e declare files arguments (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2532\"\u003e#2532\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/4a55abe7b3d046b972cb26a3c5a11acf397f1d7a\"\u003e4a55abe\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.0.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003ev6.0.0\u003c/a\u003e\u003c/h1\u003e\n\u003cp\u003eWe are pleased to announce the release of \u003cstrong\u003eLingui 6.0\u003c/strong\u003e ✨\u003c/p\u003e\n\u003cp\u003eThis release marks a \u003cstrong\u003emajor milestone\u003c/strong\u003e for the project. It includes a transition to ESM-only distribution, reduced dependency graph, the removal of deprecated APIs, and improved TypeScript support. A few new features have also been introduced.\u003c/p\u003e\n\u003cp\u003eCheck out the links below for more details:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/blog/2026/04/22/announcing-lingui-6.0\"\u003eBlog Post: Announcing Lingui 6.0\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/releases/migration-6\"\u003eMigration Guide from 5.x to 6.x\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003eFull Changelog\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDiscussion\u003c/h2\u003e\n\u003cp\u003eIf you have any questions or suggestions regarding this release, please visit the \u003ca href=\"https://github.com/lingui/js-lingui/discussions/2455\"\u003eRelated Discussion\u003c/a\u003e or our \u003ca href=\"https://discord.gg/tBZqKpeF\"\u003eDiscord Server\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003ev6.0.0-next.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0-next.3...v6.0.0-next.4\"\u003ev6.0.0-next.4\u003c/a\u003e (2026-04-17)\u003c/h2\u003e\n\u003cp\u003eVisit the \u003ca href=\"https://js-lingui-git-next-crowdin.vercel.app\"\u003ev6 website deployment\u003c/a\u003e to see the relevant docs, including the \u003ca href=\"https://js-lingui-git-next-crowdin.vercel.app/releases/migration-6\"\u003emigration guide from 5.x to 6.x\u003c/a\u003e.\u003c/p\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003econsolidate metadata transformation options into \u003ccode\u003edescriptorFields\u003c/code\u003e (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2513\"\u003e#2513\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\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/lingui/js-lingui/blob/main/packages/react/CHANGELOG.md\"\u003e@​lingui/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.1...v6.1.0\"\u003e6.1.0\u003c/a\u003e (2026-05-21)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd lingui-set/lingui-reset comment directives (\u003ca href=\"https://redirect.github.com/lingui/js-lingui/issues/2514\"\u003e#2514\u003c/a\u003e) (\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e96a52e8\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v6.0.0...v6.0.1\"\u003e6.0.1\u003c/a\u003e (2026-04-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/react\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.5...v6.0.0\"\u003e6.0.0\u003c/a\u003e (2026-04-22)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://lingui.dev/blog/2026/04/22/announcing-lingui-6.0\"\u003eAnnouncing Lingui 6.0\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.4...v5.9.5\"\u003e5.9.5\u003c/a\u003e (2026-04-06)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/react\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/lingui/js-lingui/compare/v5.9.3...v5.9.4\"\u003e5.9.4\u003c/a\u003e (2026-03-27)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​lingui/react\u003c/code\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/lingui/js-lingui/commit/46a340af0dbfc8e4ac483cc607c2b24ac48ab56b\"\u003e\u003ccode\u003e46a340a\u003c/code\u003e\u003c/a\u003e chore(release): published v6.1.0 [skip ci] (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2550\"\u003e#2550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/96a52e8323ff7d6de40a0067aa04c1270bc3370f\"\u003e\u003ccode\u003e96a52e8\u003c/code\u003e\u003c/a\u003e feat: add lingui-set/lingui-reset comment directives (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2514\"\u003e#2514\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/a710fd3c6dca7406a5b0ee219e99474586e93e59\"\u003e\u003ccode\u003ea710fd3\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.1 [skip ci] (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2541\"\u003e#2541\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/b91bb94b6fc59c85d460a4d403be41e70d11b717\"\u003e\u003ccode\u003eb91bb94\u003c/code\u003e\u003c/a\u003e chore: update tooling: Yarn, Vitest (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2539\"\u003e#2539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/a194ab486dd979c42b39d90c80e5c3e2283bf8c7\"\u003e\u003ccode\u003ea194ab4\u003c/code\u003e\u003c/a\u003e chore: official v6 release (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2500\"\u003e#2500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/9216f052768abd987bae67451eef512cf047c152\"\u003e\u003ccode\u003e9216f05\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.4 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2521\"\u003e#2521\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/1597e3a3321f02a668285bec3f5e9b24c1ef2765\"\u003e\u003ccode\u003e1597e3a\u003c/code\u003e\u003c/a\u003e chore: improve public package descriptions and keywords (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2493\"\u003e#2493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/ebcb6dc8e8d327ae5775cadee931942ef309480f\"\u003e\u003ccode\u003eebcb6dc\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.3 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2491\"\u003e#2491\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/4b244312eb16e94451a33f6dac60ecdbb55d6f74\"\u003e\u003ccode\u003e4b24431\u003c/code\u003e\u003c/a\u003e feat(vite-plugin): Vite 8 compatibility + linguiTransformerBabelPreset (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2487\"\u003e#2487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/f4bcdd555ceef0bed58b2f3075096efd4daaeec2\"\u003e\u003ccode\u003ef4bcdd5\u003c/code\u003e\u003c/a\u003e chore(release): published v6.0.0-next.2 (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2485\"\u003e#2485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lingui/js-lingui/commits/v6.1.0/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@sentry/react` from 10.46.0 to 10.53.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-javascript/releases\"\u003e@​sentry/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.53.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(core): Don't gate user data for streamed spans at scope read time (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20827\"\u003e#20827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(core): Include subpath type shims in published package (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20835\"\u003e#20835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eref(hono): Consolidate route patching and add clarification comments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20829\"\u003e#20829\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): Bump next from 15.5.15 to 15.5.18 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eBundle size 📦\u003c/h2\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ePath\u003c/th\u003e\n\u003cth\u003eSize\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e26.22 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e - with treeshaking flags\u003c/td\u003e\n\u003ctd\u003e24.69 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing)\u003c/td\u003e\n\u003ctd\u003e43.69 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing + Span Streaming)\u003c/td\u003e\n\u003ctd\u003e45.62 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing, Profiling)\u003c/td\u003e\n\u003ctd\u003e48.56 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing, Replay)\u003c/td\u003e\n\u003ctd\u003e82.4 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing, Replay) - with treeshaking flags\u003c/td\u003e\n\u003ctd\u003e72.08 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing, Replay with Canvas)\u003c/td\u003e\n\u003ctd\u003e86.99 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Tracing, Replay, Feedback)\u003c/td\u003e\n\u003ctd\u003e99.33 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Feedback)\u003c/td\u003e\n\u003ctd\u003e43 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. sendFeedback)\u003c/td\u003e\n\u003ctd\u003e30.92 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. FeedbackAsync)\u003c/td\u003e\n\u003ctd\u003e35.91 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Metrics)\u003c/td\u003e\n\u003ctd\u003e27.27 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Logs)\u003c/td\u003e\n\u003ctd\u003e27.42 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/browser\u003c/code\u003e (incl. Metrics \u0026amp; Logs)\u003c/td\u003e\n\u003ctd\u003e28.08 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/react\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e27.92 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/react\u003c/code\u003e (incl. Tracing)\u003c/td\u003e\n\u003ctd\u003e45.9 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/vue\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e31.01 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/vue\u003c/code\u003e (incl. Tracing)\u003c/td\u003e\n\u003ctd\u003e45.5 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e@​sentry/svelte\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e26.24 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle\u003c/td\u003e\n\u003ctd\u003e28.55 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing)\u003c/td\u003e\n\u003ctd\u003e46.04 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Logs, Metrics)\u003c/td\u003e\n\u003ctd\u003e29.89 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Logs, Metrics)\u003c/td\u003e\n\u003ctd\u003e47.14 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Replay, Logs, Metrics)\u003c/td\u003e\n\u003ctd\u003e68.3 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Replay)\u003c/td\u003e\n\u003ctd\u003e82.55 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Replay, Logs, Metrics)\u003c/td\u003e\n\u003ctd\u003e83.6 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Replay, Feedback)\u003c/td\u003e\n\u003ctd\u003e88.23 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics)\u003c/td\u003e\n\u003ctd\u003e89.3 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle - uncompressed\u003c/td\u003e\n\u003ctd\u003e83.97 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing) - uncompressed\u003c/td\u003e\n\u003ctd\u003e138.12 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Logs, Metrics) - uncompressed\u003c/td\u003e\n\u003ctd\u003e88.07 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed\u003c/td\u003e\n\u003ctd\u003e141.5 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCDN Bundle (incl. Replay, Logs, Metrics) - uncompressed\u003c/td\u003e\n\u003ctd\u003e209.97 KB\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003c!-- 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/getsentry/sentry-javascript/blob/develop/CHANGELOG.md\"\u003e@​sentry/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e10.53.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(core): Don't gate user data for streamed spans at scope read time (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20827\"\u003e#20827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(core): Include subpath type shims in published package (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20835\"\u003e#20835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eref(hono): Consolidate route patching and add clarification comments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20829\"\u003e#20829\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): Bump next from 15.5.15 to 15.5.18 in /dev-packages/e2e-tests/test-applications/nextjs-15-intl (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20821\"\u003e#20821\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003e10.53.0\u003c/h2\u003e\n\u003ch3\u003eImportant Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003efeat(core): Add \u003ccode\u003estreamGenAiSpans\u003c/code\u003e options to stream gen_ai spans (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20785\"\u003e#20785\u003c/a\u003e)\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eAdds a new \u003ccode\u003estreamGenAiSpans\u003c/code\u003e option that controls how \u003ccode\u003egen_ai\u003c/code\u003e spans are\nsent to Sentry. When set, the SDK extracts all \u003ccode\u003egen_ai\u003c/code\u003e spans out of a\ntransaction and sends them as v2 envelope items.\u003c/p\u003e\n\u003cp\u003eEnable this option if gen_ai spans are being dropped because the transaction payload exceeds size limits.\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003eSentry.init({\n  dsn: 'https://examplePublicKey@o0.ingest.sentry.io/0',\n  streamGenAiSpans: true,\n});\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(browser): Migrate browser profiling thread data to span attributes (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20800\"\u003e#20800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(core): Add \u003ccode\u003eaddConsoleInstrumentationFilter\u003c/code\u003e utility (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20790\"\u003e#20790\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(core): Add \u003ccode\u003eapplicationKey\u003c/code\u003e to \u003ccode\u003eBuildTimeOptionsBase\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20789\"\u003e#20789\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(core): split exports by browser/server for bundle size (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20435\"\u003e#20435\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(nextjs): Add top-level \u003ccode\u003eapplicationKey\u003c/code\u003e option (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20794\"\u003e#20794\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(node): Support Node 26 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20710\"\u003e#20710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat(profiling-node): Bump \u003ccode\u003e@sentry-internal/node-cpu-profiler\u003c/code\u003e to 2.4.0 (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20720\"\u003e#20720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(cloudflare): avoid flush lock self-wait (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20719\"\u003e#20719\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(hono): Capture transaction name on request for correct culprit (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20801\"\u003e#20801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(mcp): retroactively wrap handlers registered before wrapMcpServerWithSentry (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20699\"\u003e#20699\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(node-core): Guard against undefined util.getSystemErrorMap (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20660\"\u003e#20660\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix(replay): Capture aborted/errored fetch requests in replay network tab (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/pull/20722\"\u003e#20722\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- 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/getsentry/sentry-javascript/commit/cd9740818cba748dbced0e8a1497000a88ec8a56\"\u003e\u003ccode\u003ecd97408\u003c/code\u003e\u003c/a\u003e release: 10.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/66cfb25117ed7b14ca3da20a79b836619e9c8a6c\"\u003e\u003ccode\u003e66cfb25\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/20838\"\u003e#20838\u003c/a\u003e from getsentry/prepare-release/10.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/df8fd3863043f143961a5d96e79a717d62eada31\"\u003e\u003ccode\u003edf8fd38\u003c/code\u003e\u003c/a\u003e meta(changelog): Update changelog for 10.53.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/588100986580e0f5c8c3204661e59e5103e7d269\"\u003e\u003ccode\u003e5881009\u003c/code\u003e\u003c/a\u003e fix(core): Include subpath type shims in published package (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/20835\"\u003e#20835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/6a7d179ad38c7591021c88e4bd3ec82b3c6cc606\"\u003e\u003ccode\u003e6a7d179\u003c/code\u003e\u003c/a\u003e fix(core): Don't gate user data for streamed spans at scope read time (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/20827\"\u003e#20827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/ad47c3c3de5b2bacfbbd08bcdf9cd90184ce64bc\"\u003e\u003ccode\u003ead47c3c\u003c/code\u003e\u003c/a\u003e ref(hono): Consolidate route patching and add clarification comments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/20829\"\u003e#20829\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/28d6fe514d5ed00561a8e3d1c0406a8cb544c738\"\u003e\u003ccode\u003e28d6fe5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/getsentry/sentry-javascript/issues/20826\"\u003e#20826\u003c/a\u003e from getsentry/master\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/46aca45a868d717939448ded1001fac4337ac46e\"\u003e\u003ccode\u003e46aca45\u003c/code\u003e\u003c/a\u003e Merge branch 'release/10.53.0'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/b5cbc9ca1800e1b4ee1de66e135a90891cecd570\"\u003e\u003ccode\u003eb5cbc9c\u003c/code\u003e\u003c/a\u003e chore(deps): Bump next from 15.5.15 to 15.5.18 in /dev-packages/e2e-tests/tes...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-javascript/commit/05489b83e7920fc4ce47a530054c5558c1704a45\"\u003e\u003ccode\u003e05489b8\u003c/code\u003e\u003c/a\u003e release: 10.53.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-javascript/compare/10.46.0...10.53.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tabler/icons-react` from 3.40.0 to 3.44.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tabler/tabler-icons/releases\"\u003e@​tabler/icons-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.44.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch3\u003e18 new icons:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eoutline/code-ai\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/email-stamp\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/foodsteps\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/git-pull-request-conflict\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/noise-reduction\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/photo-alt\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/pointer-2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/pointer-collaboration-2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/pointer-collaboration\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/roulette\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/scan-cube\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/sketching\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/sparkle-2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/sparkle-highlight\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/sparkle\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/sphere-2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/text-scan-ai\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/vignette\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFixed icons: \u003ccode\u003eoutline/air-balloon\u003c/code\u003e, \u003ccode\u003eoutline/body-scan\u003c/code\u003e, \u003ccode\u003eoutline/chart-sankey\u003c/code\u003e, \u003ccode\u003eoutline/ear-scan\u003c/code\u003e, \u003ccode\u003eoutline/grid-scan\u003c/code\u003e, \u003ccode\u003eoutline/line-scan\u003c/code\u003e, \u003ccode\u003eoutline/object-scan\u003c/code\u003e, \u003ccode\u003eoutline/photo-scan\u003c/code\u003e, \u003ccode\u003eoutline/route-scan\u003c/code\u003e, \u003ccode\u003eoutline/scan-eye\u003c/code\u003e, \u003ccode\u003eoutline/scan-letter-a\u003c/code\u003e, \u003ccode\u003eoutline/scan-letter-t\u003c/code\u003e, \u003ccode\u003eoutline/scan-position\u003c/code\u003e, \u003ccode\u003eoutline/scan-traces\u003c/code\u003e, \u003ccode\u003eoutline/scan\u003c/code\u003e, \u003ccode\u003eoutline/text-scan-2\u003c/code\u003e, \u003ccode\u003eoutline/user-scan\u003c/code\u003e, \u003ccode\u003eoutline/zoom-scan\u003c/code\u003e\u003c/p\u003e\n\u003ch2\u003eRelease 3.43.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch3\u003e18 new icons:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eoutline/acorn\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/acrobatic\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/banana\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/brand-audible\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/building-eiffel-tower\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/car-door\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/car-lifter\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/chocolate\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/dumbbell\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/exercise-ball\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/flood\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/hula-hoop\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/leaf-maple\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/notdef\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/rugby\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/taiwan-dollar\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/target-2\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eoutline/unicycle\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/tabler/tabler-icons/commit/6d128ed935d4546607b1e4d5d08c8b27bdbe7758\"\u003e\u003ccode\u003e6d128ed\u003c/code\u003e\u003c/a\u003e Release 3.44.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/e40738b64486f857128ae58335354681e4e9dc9b\"\u003e\u003ccode\u003ee40738b\u003c/code\u003e\u003c/a\u003e Release 3.43.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/076f4a9e4d705d6f2cb6fc7f1417501117de12e8\"\u003e\u003ccode\u003e076f4a9\u003c/code\u003e\u003c/a\u003e Release 3.42.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/9b27b65e3d2e72ff4fd219b2dc21da81ea9cbab8\"\u003e\u003ccode\u003e9b27b65\u003c/code\u003e\u003c/a\u003e Release 3.41.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/ebad60b50af5ba521245ab982a3fe69df0e5efd9\"\u003e\u003ccode\u003eebad60b\u003c/code\u003e\u003c/a\u003e Update homepage links in documentation and package files to point to the new ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/8ed617b1b7153d1d35910cda09861077a6f649b9\"\u003e\u003ccode\u003e8ed617b\u003c/code\u003e\u003c/a\u003e Update README files to wrap images in anchor tags linking to the Tabler Icons...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/ef6e875bbef5252b3627fd1281421b10ddd04a16\"\u003e\u003ccode\u003eef6e875\u003c/code\u003e\u003c/a\u003e Update dependencies in pnpm-lock.yaml and package.json files (\u003ca href=\"https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react/issues/1497\"\u003e#1497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/6cbe8857c8baa758383bb0a9e0f6922cf82da01c\"\u003e\u003ccode\u003e6cbe885\u003c/code\u003e\u003c/a\u003e Release 3.41.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tabler/tabler-icons/commit/19d735e6206997fe06a42f6546188b9678ad57de\"\u003e\u003ccode\u003e19d735e\u003c/code\u003e\u003c/a\u003e Add JSDoc with previews in icons-react (\u003ca href=\"https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react/issues/1472\"\u003e#1472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tabler/tabler-icons/commits/v3.44.0/packages/icons-react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tanstack/react-query` from 5.95.2 to 5.100.11\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/TanStack/query/releases\"\u003e@​tanstack/react-query's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-devtools\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-next-experimental\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query-persist-client\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-persist-client-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​tanstack/react-query\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\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/TanStack/query/blob/main/packages/react-query/CHANGELOG.md\"\u003e@​tanstack/react-query's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.100.11\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.10\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.10\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.9\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/fcee7bdc429385ae8ffa224fa8a7a9ec7b8ee380\"\u003e\u003ccode\u003efcee7bd\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.9\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.8\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.8\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.7\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.7\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies []:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/TanStack/query/commit/a53ef97f87decb8ea2431710f5199431d3c94c8d\"\u003e\u003ccode\u003ea53ef97\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tanstack/query-core\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.100.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.100.4\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/TanStack/query/commit/3e85350749751eef055fffb65f6838dfafa74891\"\u003e\u003ccode\u003e3e85350\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10706\"\u003e#10706\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9d2692cec4d538c2f96489027ba546f11638dfb1\"\u003e\u003ccode\u003e9d2692c\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10695\"\u003e#10695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/74fa05eb1b16f40ea7068afd0e5e082687d22338\"\u003e\u003ccode\u003e74fa05e\u003c/code\u003e\u003c/a\u003e chore(tsconfig.json): narrow 'include' pattern to prevent TS6053 race conditi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/8c3d523d0ab0b3f8fad28fbaae6807e7aca7eb54\"\u003e\u003ccode\u003e8c3d523\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10630\"\u003e#10630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/9800c8f1a3f7907956410c23426a26d981e7d694\"\u003e\u003ccode\u003e9800c8f\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10623\"\u003e#10623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/3ae42619e5713b2fd6916760e84f7c9ddaa7a317\"\u003e\u003ccode\u003e3ae4261\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10620\"\u003e#10620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/87f7ccf580d7c12c527ce922a43977c9c653f897\"\u003e\u003ccode\u003e87f7ccf\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10604\"\u003e#10604\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/441204b9d22d1dcfc7ac85b04c21ce017a28603e\"\u003e\u003ccode\u003e441204b\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10582\"\u003e#10582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/55afb3e6fb631d684e9448b8265c68a4185c76b3\"\u003e\u003ccode\u003e55afb3e\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10581\"\u003e#10581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TanStack/query/commit/fe287cc2471b74726a5d05f1c40a86a9ef891c7e\"\u003e\u003ccode\u003efe287cc\u003c/code\u003e\u003c/a\u003e ci: Version Packages (\u003ca href=\"https://github.com/TanStack/query/tree/HEAD/packages/react-query/issues/10579\"\u003e#10579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/TanStack/query/commits/@tanstack/react-query@5.100.11/packages/react-query\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@uiw/codemirror-theme-vscode` from 4.25.9 to 4.25.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uiwjs/react-codemirror/releases\"\u003e@​uiw/codemirror-theme-vscode's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.25.10\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://jaywcjlove.github.io/#/sponsor\"\u003e\u003cimg src=\"https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee\" alt=\"Buy me a coffee\" /\u003e\u003c/a\u003e \u003ca href=\"https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-codemirror@4.25.10/file/README.md\"\u003e\u003cimg src=\"https://img.shields.io/badge/Open%20in-unpkg-blue\" alt=\"\" /\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDocumentation v4.25.10: \u003ca href=\"https://raw.githack.com/uiwjs/react-codemirror/5e24acf/index.html\"\u003ehttps://raw.githack.com/uiwjs/react-codemirror/5e24acf/index.html\u003c/a\u003e\u003cbr /\u003e\nComparing Changes: \u003ca href=\"https://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\"\u003ehttps://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\u003c/a\u003e\u003c/p\u003e\n\u003cpre lang=\"shell\"\u003e\u003ccode\u003enpm i @uiw/react-codemirror@4.25.10\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\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/uiwjs/react-codemirror/commit/d54c1303f5e21331458b2b6569ee3897e640c0be\"\u003e\u003ccode\u003ed54c130\u003c/code\u003e\u003c/a\u003e released v4.25.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/229eb4fc2d5e09861261dfb1ee9c1bf64bb0c0a4\"\u003e\u003ccode\u003e229eb4f\u003c/code\u003e\u003c/a\u003e chore: add sponsor SubList.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/d10a51f80dcd073dd5edd3c88c598ec50701b2c2\"\u003e\u003ccode\u003ed10a51f\u003c/code\u003e\u003c/a\u003e doc: update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/30a535effcd0c03539415736ca57d2b6b71bb599\"\u003e\u003ccode\u003e30a535e\u003c/code\u003e\u003c/a\u003e doc: Update READMEs\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@uiw/react-codemirror` from 4.25.9 to 4.25.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/uiwjs/react-codemirror/releases\"\u003e@​uiw/react-codemirror's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.25.10\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://jaywcjlove.github.io/#/sponsor\"\u003e\u003cimg src=\"https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee\" alt=\"Buy me a coffee\" /\u003e\u003c/a\u003e \u003ca href=\"https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-codemirror@4.25.10/file/README.md\"\u003e\u003cimg src=\"https://img.shields.io/badge/Open%20in-unpkg-blue\" alt=\"\" /\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eDocumentation v4.25.10: \u003ca href=\"https://raw.githack.com/uiwjs/react-codemirror/5e24acf/index.html\"\u003ehttps://raw.githack.com/uiwjs/react-codemirror/5e24acf/index.html\u003c/a\u003e\u003cbr /\u003e\nComparing Changes: \u003ca href=\"https://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\"\u003ehttps://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\u003c/a\u003e\u003c/p\u003e\n\u003cpre lang=\"shell\"\u003e\u003ccode\u003enpm i @uiw/react-codemirror@4.25.10\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\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/uiwjs/react-codemirror/commit/d54c1303f5e21331458b2b6569ee3897e640c0be\"\u003e\u003ccode\u003ed54c130\u003c/code\u003e\u003c/a\u003e released v4.25.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/229eb4fc2d5e09861261dfb1ee9c1bf64bb0c0a4\"\u003e\u003ccode\u003e229eb4f\u003c/code\u003e\u003c/a\u003e chore: add sponsor SubList.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/d10a51f80dcd073dd5edd3c88c598ec50701b2c2\"\u003e\u003ccode\u003ed10a51f\u003c/code\u003e\u003c/a\u003e doc: update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uiwjs/react-codemirror/commit/30a535effcd0c03539415736ca57d2b6b71bb599\"\u003e\u003ccode\u003e30a535e\u003c/code\u003e\u003c/a\u003e doc: Update READMEs\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/uiwjs/react-codemirror/compare/v4.25.9...v4.25.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@vanilla-extract/css` from 1.20.0 to 1.20.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/releases\"\u003e@​vanilla-extract/css's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​vanilla-extract/css\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.20.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/vanilla-extract-css/vanilla-extract/pull/1710\"\u003e#1710\u003c/a\u003e \u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/commit/16775939763349513c527b2f33398a03d7d75057\"\u003e\u003ccode\u003e1677593\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/askoufis\"\u003e\u003ccode\u003e@​askoufis\u003c/code\u003e\u003c/a\u003e! - Replace \u003ccode\u003ecssesc\u003c/code\u003e dependency with vendored version\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/vanilla-extract-css/vanilla-extract/blob/master/packages/css/CHANGELOG.md\"\u003e@​vanilla-extract/css's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.20.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/vanilla-extract-css/vanilla-extract/pull/1710\"\u003e#1710\u003c/a\u003e \u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/commit/16775939763349513c527b2f33398a03d7d75057\"\u003e\u003ccode\u003e1677593\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/askoufis\"\u003e\u003ccode\u003e@​askoufis\u003c/code\u003e\u003c/a\u003e! - Replace \u003ccode\u003ecssesc\u003c/code\u003e dependency with vendored version\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/vanilla-extract-css/vanilla-extract/commit/5f3faaec043bbed0afb095d6d5a2430b5ab4734a\"\u003e\u003ccode\u003e5f3faae\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/css/issues/1711\"\u003e#1711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/commit/16775939763349513c527b2f33398a03d7d75057\"\u003e\u003ccode\u003e1677593\u003c/code\u003e\u003c/a\u003e Vendor \u003ccode\u003ecssesc\u003c/code\u003e dependency (\u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/css/issues/1710\"\u003e#1710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vanilla-extract-css/vanilla-extract/commits/@vanilla-extract/css@1.20.1/packages/css\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `axios` from 1.15.2 to 1.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/axios/axios/releases\"\u003eaxios's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.16.1 — May 13, 2026\u003c/h2\u003e\n\u003cp\u003eThis release ships a defence-in-depth fix for prototype pollution in \u003ccode\u003eformDataToJSON\u003c/code\u003e, hardens proxy and CI workflows, restores Webpack 4 compatibility for the fetch adapter, and includes several small bug fixes and maintenance improvements.\u003c/p\u003e\n\u003ch2\u003e🔒 Security Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePrototype Pollution Defence-in-Depth:\u003c/strong\u003e Hardened \u003ccode\u003eformDataToJSON\u003c/code\u003e against already-polluted \u003ccode\u003eObject.prototype\u003c/code\u003e by walking own properties only, so attacker-controlled keys inherited from a poisoned prototype cannot propagate through deserialization. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/7413\"\u003e#7413\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eProxy Cleartext Leak:\u003c/strong\u003e Fixed an issue where HTTPS request data could be transmitted in cleartext to an HTTP proxy under certain configurations. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10858\"\u003e#10858\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eCI Cache Removal:\u003c/strong\u003e Removed all GitHub Actions caches as a defence-in-depth measure against cache poisoning vectors in the build pipeline. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10882\"\u003e#10882\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eData URI Parsing:\u003c/strong\u003e Updated the \u003ccode\u003efromDataURI\u003c/code\u003e regex to match RFC 2397 more strictly, fixing edge cases in \u003ccode\u003edata:\u003c/code\u003e URL handling. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10829\"\u003e#10829\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eUnicode Headers:\u003c/strong\u003e Preserved Unicode header values when running through request interceptors, so non-ASCII header content is no longer corrupted before dispatch. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10850\"\u003e#10850\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eXHR Upload Progress:\u003c/strong\u003e Guarded against malformed \u003ccode\u003eProgressEvent\u003c/code\u003e payloads emitted by some environments during XHR upload, preventing crashes when \u003ccode\u003eloaded\u003c/code\u003e / \u003ccode\u003etotal\u003c/code\u003e are missing or invalid. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10868\"\u003e#10868\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebpack 4 Fetch Adapter:\u003c/strong\u003e Fixed an \u0026quot;unexpected token\u0026quot; error caused by syntax in the fetch adapter that Webpack 4 could not parse, restoring compatibility for legacy bundler users. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10864\"\u003e#10864\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType Definitions:\u003c/strong\u003e Made \u003ccode\u003eparseReviver\u003c/code\u003e \u003ccode\u003econtext.source\u003c/code\u003e optional in the type definitions to align with the ES2023 specification. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10837\"\u003e#10837\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eURL Object Support Reverted:\u003c/strong\u003e Reverted the change that allowed passing a \u003ccode\u003eURL\u003c/code\u003e object as \u003ccode\u003econfig.url\u003c/code\u003e (originally \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10866\"\u003e#10866\u003c/a\u003e\u003c/strong\u003e) due to regressions; this support will be reintroduced in a later release once the underlying issues are addressed. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10874\"\u003e#10874\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔧 Maintenance \u0026amp; Chores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eCycle Detection Refactor:\u003c/strong\u003e Replaced the array-based cycle tracker in \u003ccode\u003etoJSONObject\u003c/code\u003e with a \u003ccode\u003eWeakSet\u003c/code\u003e, improving performance and memory behaviour on large nested structures. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10832\"\u003e#10832\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecomposeSignals Cleanup:\u003c/strong\u003e Refactored \u003ccode\u003ecomposeSignals\u003c/code\u003e to use a clearer early-return structure, simplifying the cancellation/abort composition path. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10844\"\u003e#10844\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eAI Readiness \u0026amp; Repo Docs:\u003c/strong\u003e Added \u003ccode\u003eAGENTS.md\u003c/code\u003e and related contributor-guide updates for both human and AI agents, plus post-release documentation improvements. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10835\"\u003e#10835\u003c/a\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10841\"\u003e#10841\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDocs Improvements:\u003c/strong\u003e Clarified the GET request example, fixed the interceptor \u003ccode\u003eeject\u003c/code\u003e example to reference the correct instance, and corrected the Buzzoid sponsor description in the README. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10836\"\u003e#10836\u003c/a\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10853\"\u003e#10853\u003c/a\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10856\"\u003e#10856\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eSponsorship Tooling:\u003c/strong\u003e Fixed empty sponsor arrays in the sponsor processing script, added the ability to inject additional sponsors, updated the sponsorship link, and added a Twicsy advertisement entry. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10843\"\u003e#10843\u003c/a\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10859\"\u003e#10859\u003c/a\u003e\u003c/strong\u003e, \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10869\"\u003e#10869\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDependencies:\u003c/strong\u003e Bumped \u003ccode\u003e@commitlint/cli\u003c/code\u003e from 20.5.0 to 20.5.2. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10846\"\u003e#10846\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🌟 New Contributors\u003c/h2\u003e\n\u003cp\u003eWe are thrilled to welcome our new contributors. Thank you for helping improve axios:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/hpinmetaverse\"\u003e\u003ccode\u003e@​hpinmetaverse\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10836\"\u003e#10836\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/tommyhgunz14\"\u003e\u003ccode\u003e@​tommyhgunz14\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/7413\"\u003e#7413\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/abhu85\"\u003e\u003ccode\u003e@​abhu85\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10829\"\u003e#10829\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/divyanshuraj1095\"\u003e\u003ccode\u003e@​divyanshuraj1095\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10853\"\u003e#10853\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/sagodi97\"\u003e\u003ccode\u003e@​sagodi97\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10856\"\u003e#10856\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/rkdfx\"\u003e\u003ccode\u003e@​rkdfx\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10868\"\u003e#10868\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ca href=\"https://github.com/Liuwei1125\"\u003e\u003ccode\u003e@​Liuwei1125\u003c/code\u003e\u003c/a\u003e\u003c/strong\u003e (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10866\"\u003e#10866\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/axios/axios/compare/v1.16.0...v1.16.1\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev1.16.0 — May 2, 2026\u003c/h2\u003e\n\u003cp\u003eThis release adds support for the QUERY HTTP method and a new \u003ccode\u003eECONNREFUSED\u003c/code\u003e error constant, lands a substantial wave of HTTP, fetch, and XHR adapter bug fixes around redirects, aborts, headers, and timeouts, and welcomes 23 new contributors.\u003c/p\u003e\n\u003ch2\u003e⚠️ Notable Changes\u003c/h2\u003e\n\u003cp\u003eA handful of fixes in this release are either security-adjacent or change observable behaviour. Please review before upgrading:\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/axios/axios/blob/v1.x/CHANGELOG.md\"\u003eaxios's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.16.1 — May 13, 2026\u003c/h2\u003e\n\u003cp\u003eThis release ships a defence-in-depth fix for prototype pollution in \u003ccode\u003eformDataToJSON\u003c/code\u003e, hardens proxy and CI workflows, restores Webpack 4 compatibility for the fetch adapter, and includes several small bug fixes and maintenance improvements.\u003c/p\u003e\n\u003ch2\u003e🔒 Security Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePrototype Pollution Defence-in-Depth:\u003c/strong\u003e Hardened \u003ccode\u003eformDataToJSON\u003c/code\u003e against already-polluted \u003ccode\u003eObject.prototype\u003c/code\u003e by walking own properties only, so attacker-controlled keys inherited from a poisoned prototype cannot propagate through deserialization. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/7413\"\u003e#7413\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eProxy Cleartext Leak:\u003c/strong\u003e Fixed an issue where HTTPS request data could be transmitted in cleartext to an HTTP proxy under certain configurations. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10858\"\u003e#10858\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eCI Cache Removal:\u003c/strong\u003e Removed all GitHub Actions caches as a defence-in-depth measure against cache poisoning vectors in the build pipeline. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10882\"\u003e#10882\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eData URI Parsing:\u003c/strong\u003e Updated the \u003ccode\u003efromDataURI\u003c/code\u003e regex to match RFC 2397 more strictly, fixing edge cases in \u003ccode\u003edata:\u003c/code\u003e URL handling. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10829\"\u003e#10829\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eUnicode Headers:\u003c/strong\u003e Preserved Unicode header values when running through request interceptors, so non-ASCII header content is no longer corrupted before dispatch. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10850\"\u003e#10850\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eXHR Upload Progress:\u003c/strong\u003e Guarded against malformed \u003ccode\u003eProgressEvent\u003c/code\u003e payloads emitted by some environments during XHR upload, preventing crashes when \u003ccode\u003eloaded\u003c/code\u003e / \u003ccode\u003etotal\u003c/code\u003e are missing or invalid. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10868\"\u003e#10868\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eWebpack 4 Fetch Adapter:\u003c/strong\u003e Fixed an \u0026quot;unexpected token\u0026quot; error caused by syntax in the fetch adapter that Webpack 4 could not parse, restoring compatibility for legacy bundler users. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10864\"\u003e#10864\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType Definitions:\u003c/strong\u003e Made \u003ccode\u003eparseReviver\u003c/code\u003e \u003ccode\u003econtext.source\u003c/code\u003e optional in the type definitions to align with the ES2023 specification. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10837\"\u003e#10837\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eURL Object Support Reverted:\u003c/strong\u003e Reverted the change that allowed passing a \u003ccode\u003eURL\u003c/code\u003e object as \u003ccode\u003econfig.url\u003c/code\u003e (originally \u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10866\"\u003e#10866\u003c/a\u003e\u003c/strong\u003e) due to regressions; this support will be reintroduced in a later release once the underlying issues are addressed. (\u003cstrong\u003e\u003ca href=\"https://redirect.github.com/axios/axios/issues/10874\"\u003e#10874\u003c/a\u003e\u003c/strong\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔧 Maintenance \u0026amp; Chores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eCycle Detection Refactor:\u003c/strong\u003e Replaced the array-based cycle tracker in \u003ccode\u003etoJSONObject\u003c/code\u003e with a \u003ccode\u003eWeakSet\u003c/code\u003e, improving performance and memory behaviour on large ne...\n\n_Description has been truncated_","html_url":"https://github.com/invenhost/InvenTree/pull/348","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/invenhost%2FInvenTree/issues/348","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/348/packages"}}]}