{"id":6964,"name":"@tailwindcss/oxide-linux-x64-gnu","ecosystem":"npm","repository_url":"https://github.com/tailwindlabs/tailwindcss","issues_count":379,"created_at":"2025-06-06T22:07:30.543Z","updated_at":"2025-06-06T22:07:30.543Z","purl":"pkg:npm/@tailwindcss/oxide-linux-x64-gnu","metadata":{"id":5548753,"name":"@tailwindcss/oxide-linux-x64-gnu","ecosystem":"npm","description":"This is the **x86_64-unknown-linux-gnu** binary for `@tailwindcss/oxide`","homepage":"https://github.com/tailwindlabs/tailwindcss#readme","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/tailwindlabs/tailwindcss","keywords_array":[],"namespace":"tailwindcss","versions_count":847,"first_release_published_at":"2024-02-28T13:47:06.852Z","latest_release_published_at":"2025-05-28T15:29:19.164Z","latest_release_number":"4.1.8","last_synced_at":"2025-06-06T16:23:10.640Z","created_at":"2022-11-28T23:16:02.024Z","updated_at":"2025-06-06T16:23:10.641Z","registry_url":"https://www.npmjs.com/package/@tailwindcss/oxide-linux-x64-gnu","install_command":"npm install @tailwindcss/oxide-linux-x64-gnu","documentation_url":null,"metadata":{"funding":null,"dist-tags":{"oxide-insiders":"0.0.0-oxide-insiders.9ebaaac","internal":"0.0.0-internal.b2586d4e","next":"4.0.0","latest":"4.1.8","insiders":"0.0.0-insiders.ada85b1"}},"repo_metadata":{"id":36986230,"uuid":"106017343","full_name":"tailwindlabs/tailwindcss","owner":"tailwindlabs","description":"A utility-first CSS framework for rapid UI development.","archived":false,"fork":false,"pushed_at":"2024-09-26T21:50:31.000Z","size":105826,"stargazers_count":82137,"open_issues_count":80,"forks_count":4152,"subscribers_count":617,"default_branch":"next","last_synced_at":"2024-09-26T21:56:07.385Z","etag":null,"topics":["css","css-framework","functional-css","postcss","responsive","tailwindcss","utility-classes"],"latest_commit_sha":null,"homepage":"https://tailwindcss.com/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tailwindlabs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-06T14:59:14.000Z","updated_at":"2024-09-26T21:50:36.000Z","dependencies_parsed_at":"2024-01-15T01:27:16.389Z","dependency_job_id":"d9a206c4-a2a8-4058-a617-0026e352a595","html_url":"https://github.com/tailwindlabs/tailwindcss","commit_stats":{"total_commits":4717,"total_committers":297,"mean_commits":"15.882154882154882","dds":0.5263938944244223,"last_synced_commit":"c094fadbbc12fa822e6b5e1da3c358baa70a8b0a"},"previous_names":["tailwindcss/tailwindcss"],"tags_count":254,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tailwindlabs","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/refs/heads/next","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219874881,"owners_count":16554628,"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":"tailwindlabs","name":"Tailwind Labs","uuid":"67109815","kind":"organization","description":"Creators of Tailwind CSS and Headless UI, and authors of Refactoring UI.","email":null,"website":"tailwindcss.com","location":null,"twitter":"tailwindcss","company":null,"icon_url":"https://avatars.githubusercontent.com/u/67109815?v=4","repositories_count":27,"last_synced_at":"2024-04-18T13:34:09.710Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/tailwindlabs","funding_links":[],"total_stars":152099,"followers":6347,"following":0,"created_at":"2022-11-02T16:25:13.440Z","updated_at":"2024-04-18T13:34:21.706Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tailwindlabs","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tailwindlabs/repositories"},"tags":[{"name":"v4.0.0-alpha.25","sha":"c094fadbbc12fa822e6b5e1da3c358baa70a8b0a","kind":"commit","published_at":"2024-09-24T17:03:00.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v4.0.0-alpha.25","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v4.0.0-alpha.25","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v4.0.0-alpha.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v4.0.0-alpha.25/manifests"},{"name":"v3.4.13","sha":"ed3c5356b77b6c428e9c0ea5bc32719dcdf94128","kind":"commit","published_at":"2024-09-23T14:56:58.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.13","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.13","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.13/manifests"},{"name":"v3.4.12","sha":"e8614a268d3410bd96445df8f25a8b637eefcf14","kind":"commit","published_at":"2024-09-17T13:13:09.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.12","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.12/manifests"},{"name":"v4.0.0-alpha.24","sha":"2ef87ab7fbb99bd0d03057e5de5fbd51552e6481","kind":"commit","published_at":"2024-09-12T14:10:56.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v4.0.0-alpha.24","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v4.0.0-alpha.24","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v4.0.0-alpha.24","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v4.0.0-alpha.24/manifests"},{"name":"v3.4.11","sha":"818d10ab8461e682a185475dd4718e741103a4e3","kind":"commit","published_at":"2024-09-11T17:25:41.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.11","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.11/manifests"},{"name":"v4.0.0-alpha.23","sha":"15d1714c339273f908423bf13826221362f3e997","kind":"commit","published_at":"2024-09-05T14:43:07.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v4.0.0-alpha.23","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v4.0.0-alpha.23","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v4.0.0-alpha.23","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v4.0.0-alpha.23/manifests"},{"name":"v4.0.0-alpha.22","sha":"d9558bbc4cc98be6223487b5a7f18555a49e5932","kind":"commit","published_at":"2024-09-04T19:50:57.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v4.0.0-alpha.22","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v4.0.0-alpha.22","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v4.0.0-alpha.22","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v4.0.0-alpha.22/manifests"},{"name":"v3.4.10","sha":"f07dbff2a7f78fd75c53c6cfe01b58b6c0419f22","kind":"commit","published_at":"2024-08-13T20:24:27.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.10","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.10/manifests"},{"name":"v3.4.9","sha":"f65023efb97832660dc17cf954504f9f156047ba","kind":"commit","published_at":"2024-08-08T13:10:38.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.9","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.9/manifests"},{"name":"v3.4.8","sha":"1676118af9dd1ca2b59f3f9b91afef4d0b453ea5","kind":"commit","published_at":"2024-08-07T15:26:53.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.8","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.8/manifests"},{"name":"v3.4.7","sha":"9824cb64a03afaa405e184cb31003c8a1efafaa7","kind":"commit","published_at":"2024-07-25T13:20:52.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.7","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.7/manifests"},{"name":"v3.4.6","sha":"d622977b2a3308703e1cb105f3eeb555da31877f","kind":"commit","published_at":"2024-07-16T14:52:51.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.6/manifests"},{"name":"v3.4.5","sha":"a0dbb3d87664521af8a422df5c179d9572a4698c","kind":"commit","published_at":"2024-07-15T15:07:30.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.5/manifests"},{"name":"v3.4.4","sha":"ff6f085da2afe4149ab2791b8b6b74836dbbba9f","kind":"commit","published_at":"2024-06-05T16:55:54.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.4/manifests"},{"name":"v3.4.3","sha":"f1f419a9ecfcd00a2001ee96ab252739fca47564","kind":"commit","published_at":"2024-03-27T19:18:37.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.3/manifests"},{"name":"v3.4.2","sha":"8430d8b5207c2d3d3a6f71621e5df9d7d040a5b4","kind":"commit","published_at":"2024-03-27T15:25:32.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.2/manifests"},{"name":"v3.4.1","sha":"7361468f77500105b0559e879e121f34306e8da2","kind":"commit","published_at":"2024-01-05T20:31:16.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.1/manifests"},{"name":"v3.4.0","sha":"8350cffdad34efb6625e0f2b0ff738edaf0d1cce","kind":"commit","published_at":"2023-12-18T19:52:00.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.4.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.4.0/manifests"},{"name":"v3.3.7","sha":"b01283cc9b66cf830d87cbfe1fbb5ebb8561226a","kind":"commit","published_at":"2023-12-18T18:53:08.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.3.7","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.3.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.7/manifests"},{"name":"v3.3.6","sha":"312582991953e5c3abba2a91d0b0c87e129eb517","kind":"commit","published_at":"2023-12-04T17:09:32.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.3.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.3.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.6/manifests"},{"name":"v3.3.5","sha":"9db2d68295a4365001fdc69739978fc2ea9d570e","kind":"commit","published_at":"2023-10-25T13:32:52.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.3.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.3.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.5/manifests"},{"name":"v3.3.4","sha":"32a62b7bb14bfcc0c07f4c9fce8db3291dc807b8","kind":"commit","published_at":"2023-10-24T17:40:38.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.3.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.3.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.4/manifests"},{"name":"v3.3.3","sha":"0bd81a06c499be58bf87ca16481333823d86e828","kind":"commit","published_at":"2023-07-13T16:02:02.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.3.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.3/manifests"},{"name":"v3.3.2","sha":"18677447063f7d08252a3f34c34d7deb0bcd6995","kind":"commit","published_at":"2023-04-25T22:09:57.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.3.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.2/manifests"},{"name":"v3.3.1","sha":"1e55b798d74baa5a50921668c4e3231175c74cd7","kind":"commit","published_at":"2023-03-30T19:06:45.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.3.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.1/manifests"},{"name":"v3.3.0","sha":"3809127a2ce7e8173611ae40c7a260bb56e6342f","kind":"commit","published_at":"2023-03-28T13:43:09.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.3.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.3.0/manifests"},{"name":"v3.2.7","sha":"2b255a36cfcd5281bfddcaf7cc6bac66f22695bb","kind":"commit","published_at":"2023-02-16T19:07:22.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.2.7","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.2.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.7/manifests"},{"name":"v3.2.6","sha":"7f81849a439fcef75d9fe84ff82398528b6a2769","kind":"commit","published_at":"2023-02-08T16:38:19.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.2.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.6/manifests"},{"name":"v3.2.5","sha":"abe5163116900c1db7ab16f1dc82300774869c7c","kind":"commit","published_at":"2023-02-08T15:34:58.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.2.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.5/manifests"},{"name":"v3.2.4","sha":"f2f1ee9b5585d11945587f688a4c533c5287aaf7","kind":"tag","published_at":"2022-11-11T17:14:46.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.2.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.4/manifests"},{"name":"v3.2.3","sha":"757a8d64a8dfcb6f0163e3edb9b94841793cd1a8","kind":"commit","published_at":"2022-11-09T22:13:39.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.2.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.3/manifests"},{"name":"v3.2.2","sha":"763fddefacc0a7b231e112c8a9edf8d203b82250","kind":"tag","published_at":"2022-11-04T20:28:47.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.2.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.2/manifests"},{"name":"v3.2.1","sha":"547f9f674a28fc46cc4e02b51f9afefc6418a765","kind":"tag","published_at":"2022-10-21T16:15:16.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.2.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.1/manifests"},{"name":"v3.2.0","sha":"642c5c8aa940549aeac06ddce333838b3577cdc4","kind":"tag","published_at":"2022-10-19T16:41:09.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.2.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.0/manifests"},{"name":"v3.2.0-beta.2","sha":"c2854dae71e04e39a8d699fe46a79f6c3ab06fc2","kind":"commit","published_at":"2022-10-16T14:20:21.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.2.0-beta.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.2.0-beta.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.0-beta.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.2.0-beta.2/manifests"},{"name":"v3.1.8","sha":"99b53b416085413a0b0459a37d57daac53cb9d4d","kind":"tag","published_at":"2022-08-05T14:33:22.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.1.8","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.8/manifests"},{"name":"v3.1.7","sha":"14542d94f7078dc8d065ddcc6d403cd0a467f1be","kind":"commit","published_at":"2022-07-29T15:49:20.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.1.7","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.7/manifests"},{"name":"v3.1.6","sha":"aee196ef4705673788b40071b838d64f3ebabc69","kind":"tag","published_at":"2022-07-11T19:56:46.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.1.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.6/manifests"},{"name":"v3.1.5","sha":"bd03dec664d6780ae21a6c0e724dc9d2aa0242a3","kind":"tag","published_at":"2022-07-07T17:24:28.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.1.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.5/manifests"},{"name":"v3.1.4","sha":"1a30ca07ab2c08a2e18974b245c4080c15bbc049","kind":"tag","published_at":"2022-06-21T16:08:08.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.1.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.4/manifests"},{"name":"v3.1.3","sha":"76340ce5b9d4f1705500451f947a4b55bc40f48f","kind":"tag","published_at":"2022-06-14T17:12:28.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.1.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.3/manifests"},{"name":"v3.1.2","sha":"ce80574ff5ee43258410d5c44314e183b3618460","kind":"tag","published_at":"2022-06-10T09:54:47.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.1.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.2/manifests"},{"name":"v3.1.1","sha":"3f2e570ed49f1863a3b0d2a4cb3634fe2b1561d6","kind":"tag","published_at":"2022-06-09T20:55:44.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.1.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.1/manifests"},{"name":"v3.1.0","sha":"c01ce5c0fddfa5eb2fa80cf95e245f4f5d89ec1d","kind":"tag","published_at":"2022-06-08T13:32:47.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.1.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.1.0/manifests"},{"name":"v3.0.24","sha":"23a6d3ff8498bb3f63592810b2677e4773a3f7a4","kind":"tag","published_at":"2022-04-12T18:11:22.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.24","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.24","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.24","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.24/manifests"},{"name":"v3.0.23","sha":"93e0fdf29f6ce312eb86e4a1fee71b89b8b7f53c","kind":"tag","published_at":"2022-02-16T11:20:14.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.23","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.23","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.23","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.23/manifests"},{"name":"v3.0.22","sha":"b26ffa0581b28b2de65aa68a02616660186d26d1","kind":"tag","published_at":"2022-02-11T15:32:30.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.22","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.22","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.22","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.22/manifests"},{"name":"v3.0.21","sha":"9f119e503e98445239c4c342ca96ae1afaa2072d","kind":"tag","published_at":"2022-02-10T23:08:59.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.21","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.21","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.21","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.21/manifests"},{"name":"v3.0.20","sha":"99a8ab118dfc315cf09525d57c1c24a58c22992a","kind":"tag","published_at":"2022-02-10T17:16:01.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.20","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.20","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.20","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.20/manifests"},{"name":"v3.0.19","sha":"2250e1bacd4a35f8fcff6925a72df7752deafd55","kind":"tag","published_at":"2022-02-07T20:58:01.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.19","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.19","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.19","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.19/manifests"},{"name":"v3.0.18","sha":"ce987357de6abcd76f2312ec8ab9de686098c1a0","kind":"tag","published_at":"2022-01-28T19:46:16.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.18","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.18","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.18","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.18/manifests"},{"name":"v3.0.17","sha":"74997f16463802f80f8b54c37b306a4c617794d2","kind":"tag","published_at":"2022-01-26T18:32:02.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.17","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.17","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.17/manifests"},{"name":"v3.0.16","sha":"b1c77d6406e7bb061b8b926a48f0293a778d02dc","kind":"tag","published_at":"2022-01-24T13:56:48.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.16","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.16","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.16/manifests"},{"name":"v3.0.15","sha":"61b68a214946959c3e7e31fb76003ec938b85f69","kind":"tag","published_at":"2022-01-15T01:36:58.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.15","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.15","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.15","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.15/manifests"},{"name":"v3.0.14","sha":"693608762a1ea097b59b4a6fd7e26677e61e873c","kind":"tag","published_at":"2022-01-14T17:23:18.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.14","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.14","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.14/manifests"},{"name":"v3.0.13","sha":"62569092e7ba79fc45f77451c179b3f6cc0f80f8","kind":"tag","published_at":"2022-01-11T10:17:10.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.13","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.13","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.13/manifests"},{"name":"v3.0.12","sha":"8e0ccda1a158e3d2164c5cea778f0761ec8a0eaf","kind":"tag","published_at":"2022-01-07T16:42:18.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.12","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.12/manifests"},{"name":"v3.0.11","sha":"a00b9fb69247a5312c92fec3aa6cf069059037ca","kind":"tag","published_at":"2022-01-05T13:39:14.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.11","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.11/manifests"},{"name":"v3.0.10","sha":"30ea5b14a631b6f68e56740c3d09bb54fcbad08a","kind":"tag","published_at":"2022-01-04T18:02:12.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.10","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.10/manifests"},{"name":"v3.0.9","sha":"51b3c0a458517b00f0f88094b56e2c17ebedfdd0","kind":"tag","published_at":"2022-01-03T17:42:31.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.9","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.9/manifests"},{"name":"v3.0.8","sha":"49f76ed23a9e218cd0b1a459929fa02d7f73ae08","kind":"tag","published_at":"2021-12-28T21:10:13.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.8","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.8/manifests"},{"name":"v3.0.7","sha":"0c10621414dd4e98cba9c75148f19ea9213362b0","kind":"tag","published_at":"2021-12-17T17:42:22.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.7","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.7/manifests"},{"name":"v3.0.6","sha":"4a5ba3779e9bb4ce726488e9b624bd73521e79e9","kind":"tag","published_at":"2021-12-16T19:07:40.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.6/manifests"},{"name":"v3.0.5","sha":"3c933795650a891ca200098a8ce04a30a5e33287","kind":"tag","published_at":"2021-12-15T12:04:48.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.5/manifests"},{"name":"v3.0.4","sha":"ee557704b5142672a1a419d3ddc861d8172a7b53","kind":"tag","published_at":"2021-12-15T11:35:44.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.4/manifests"},{"name":"v3.0.3","sha":"6bfde07b78b822588308c32f4c5f5f4390f9a50e","kind":"commit","published_at":"2021-12-15T09:27:42.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"d07553bc651e33370c7885f8c16985951e0864f1","kind":"tag","published_at":"2021-12-13T14:43:17.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"8a4b2f0627126d5ff160540f52d848ebec0c9cd7","kind":"commit","published_at":"2021-12-11T01:28:26.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"99baa6e3230376b68cf4b7be7dbfc6adc9874b82","kind":"tag","published_at":"2021-12-09T16:26:02.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.0/manifests"},{"name":"v3.0.0-alpha.2","sha":"6057342593940de79fe31fd09b05b515b8f2dd1a","kind":"tag","published_at":"2021-11-08T16:49:18.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.0-alpha.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.0-alpha.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.0-alpha.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.0-alpha.2/manifests"},{"name":"v2.2.19","sha":"ee87fed11376b2d23778ca2cb8ea99108416a734","kind":"tag","published_at":"2021-10-29T11:39:19.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.19","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.19","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.19","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.19/manifests"},{"name":"v2.2.18","sha":"a601b9f2acd388052e22643467cd530a9f74b65b","kind":"tag","published_at":"2021-10-29T09:12:08.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.18","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.18","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.18","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.18/manifests"},{"name":"v2.2.17","sha":"769d22fecc1c5faafb5b5d6c406ac33ed3ecc33f","kind":"tag","published_at":"2021-10-13T17:12:35.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.17","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.17","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.17/manifests"},{"name":"v3.0.0-alpha.1","sha":"ac98ff4753539a26d91079350647c54728ea4e82","kind":"tag","published_at":"2021-10-01T15:56:49.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v3.0.0-alpha.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v3.0.0-alpha.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.0-alpha.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v3.0.0-alpha.1/manifests"},{"name":"v2.2.16","sha":"dbe797dd230cd1f501e3c4f22648cf242042a2da","kind":"tag","published_at":"2021-09-26T11:47:27.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.16","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.16","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.16/manifests"},{"name":"v2.2.15","sha":"0d8be3d330a8efd4d7a1f26d644889cc533ca8f3","kind":"tag","published_at":"2021-09-10T08:08:35.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.15","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.15","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.15","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.15/manifests"},{"name":"v2.2.14","sha":"cd15b3e985bd0c7cd8acf816e4afd063ed59033a","kind":"tag","published_at":"2021-09-08T15:42:12.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.14","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.14","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.14/manifests"},{"name":"v2.2.13","sha":"454a189d2f04be7e8523c1c41dbaad1314c75da2","kind":"tag","published_at":"2021-09-08T13:31:23.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.13","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.13","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.13/manifests"},{"name":"v2.2.12","sha":"f6b862c2a3dc77ceda2ba46b7a2b950bb8788f28","kind":"tag","published_at":"2021-09-08T09:51:07.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.12","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.12/manifests"},{"name":"v2.2.11","sha":"ae0d84f7396c2daebf70be3af33efffac7318359","kind":"commit","published_at":"2021-09-07T10:14:51.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.11","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.11/manifests"},{"name":"v2.2.10","sha":"7961556af91686a30ebc969967b8ace53f6d9aac","kind":"tag","published_at":"2021-09-06T19:26:45.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.10","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.10/manifests"},{"name":"v2.2.9","sha":"267f20c47e9e8f49b526db4283c28e4a6d869545","kind":"tag","published_at":"2021-08-30T11:01:09.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.9","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.9/manifests"},{"name":"v2.2.8","sha":"211f40b175c56a932ced3801112b9056a85aee66","kind":"tag","published_at":"2021-08-27T08:37:43.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.8","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.8/manifests"},{"name":"v2.2.7","sha":"5100270bed77565daacaa612617d7fb980676c3d","kind":"tag","published_at":"2021-07-23T11:48:52.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.7","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.7/manifests"},{"name":"v2.2.6","sha":"4d598d59aa76c08b2c5d1ce73ff5f2bc86f408e6","kind":"tag","published_at":"2021-07-21T19:43:37.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.6/manifests"},{"name":"v2.2.5","sha":"c1c5cf0923a56ea15eff138cf10bac4f63a89872","kind":"tag","published_at":"2021-07-21T13:13:16.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.5/manifests"},{"name":"v0.0.0-insiders.4a070ac","sha":"d323d54286c714147558e116aec30b114045f76c","kind":"tag","published_at":"2021-07-01T21:19:24.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-insiders.4a070ac","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-insiders.4a070ac","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-insiders.4a070ac","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-insiders.4a070ac/manifests"},{"name":"v0.0.0-c905c8a2","sha":"bca8f1228332fe4368cbaf77c2b59f820186f01e","kind":"tag","published_at":"2021-07-01T12:57:36.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-c905c8a2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-c905c8a2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-c905c8a2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-c905c8a2/manifests"},{"name":"v0.0.0-34779b4","sha":"910a3f29a1c5dcdcb0092030ca1ab446b7300018","kind":"tag","published_at":"2021-07-01T09:19:11.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-34779b4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-34779b4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-34779b4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-34779b4/manifests"},{"name":"v0.0.0-f90763a","sha":"4d6d02e09a211c440a3609c6b322bd8de8882e76","kind":"tag","published_at":"2021-06-29T21:02:46.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-f90763a","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-f90763a","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-f90763a","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-f90763a/manifests"},{"name":"v0.0.0-5a9c68d","sha":"11f9252d4049d41097bd3dbd3b7dcf4b06f44c86","kind":"tag","published_at":"2021-06-26T22:34:59.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-5a9c68d","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-5a9c68d","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-5a9c68d","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-5a9c68d/manifests"},{"name":"v0.0.0-c95bd53","sha":"5a37c87f252b3367e819977b6c3f7bece39fc60e","kind":"tag","published_at":"2021-06-25T19:39:34.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-c95bd53","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-c95bd53","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-c95bd53","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-c95bd53/manifests"},{"name":"v0.0.0-7db4c3a","sha":"5fc611321cdfc869fdde3916b81767c7223d3151","kind":"tag","published_at":"2021-06-25T16:02:56.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-7db4c3a","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-7db4c3a","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-7db4c3a","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-7db4c3a/manifests"},{"name":"v0.0.0-92d1664","sha":"01474b82145acb3deaf5cc3ebf44b7672fd39229","kind":"tag","published_at":"2021-06-25T15:35:30.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-92d1664","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-92d1664","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-92d1664","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-92d1664/manifests"},{"name":"v0.0.0-1bb7ef9","sha":"05d493542d3676794b8c36f0f9341339963fe820","kind":"tag","published_at":"2021-06-25T10:33:35.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-1bb7ef9","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-1bb7ef9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-1bb7ef9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-1bb7ef9/manifests"},{"name":"v0.0.0-d782a78","sha":"7590bc10b3d266c1d19468aa97635fdc3f8da145","kind":"tag","published_at":"2021-06-24T21:22:43.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-d782a78","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-d782a78","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-d782a78","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-d782a78/manifests"},{"name":"v2.2.4","sha":"d852de67854eb01d855b784fcc19a959956df3f3","kind":"tag","published_at":"2021-06-23T19:27:53.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.4/manifests"},{"name":"v2.2.3","sha":"041eed0d46c4077b52595523776921d62993f035","kind":"tag","published_at":"2021-06-23T18:32:18.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.3/manifests"},{"name":"v2.2.2","sha":"9e77d743c3024ab2e0d7b748df21cd62db1c3ab3","kind":"tag","published_at":"2021-06-18T14:35:36.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.2/manifests"},{"name":"v2.2.1","sha":"2fd6575095cd058f1e6a7f318b63e29a8ac7c934","kind":"tag","published_at":"2021-06-18T13:42:32.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.1/manifests"},{"name":"v2.2.0","sha":"0bc3eeb0f6957e51a040882e15b2ed1906313326","kind":"tag","published_at":"2021-06-17T16:01:32.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.2.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.2.0/manifests"},{"name":"v2.1.4","sha":"a061b3884120a325851f27ee7693af2b73b1d38e","kind":"tag","published_at":"2021-06-02T12:53:56.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.1.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.1.4/manifests"},{"name":"v2.1.3","sha":"da711020d6a79ddcbb306bc0013a508291ad6ef7","kind":"tag","published_at":"2021-06-01T17:18:43.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.1.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.1.3/manifests"},{"name":"v2.1.2","sha":"1aedf1033f63588e5ca5c83a1f9070b67d093719","kind":"tag","published_at":"2021-04-23T18:24:08.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.1.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.1.2/manifests"},{"name":"v2.1.1","sha":"59f3f53cbb179e6658d1c19ddb7b646018b4e579","kind":"commit","published_at":"2021-04-05T22:13:49.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.1.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.1.1/manifests"},{"name":"v2.1.0","sha":"8bce53b9cab864cac843f47488615e698eca1ca2","kind":"tag","published_at":"2021-04-05T18:42:19.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.1.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.1.0/manifests"},{"name":"v2.0.5","sha":"ed923c7896ec846f035d392febd2632fcdb9a9d0","kind":"tag","published_at":"2021-04-05T17:24:15.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.5/manifests"},{"name":"v2.0.4","sha":"d1c5a64ae41585395936b2863158aedbe49e27a2","kind":"tag","published_at":"2021-03-17T21:43:58.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.4/manifests"},{"name":"v2.0.3","sha":"7e8b1c8fcbf11b8a22ad3d58aca9102beac7ca81","kind":"tag","published_at":"2021-02-07T20:29:01.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"f63aae7fab43c226d73c146f4570b051c402fcb3","kind":"tag","published_at":"2020-12-11T14:08:26.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.2/manifests"},{"name":"v2.0.1-compat","sha":"7bf772d8d837ca35accecd467087011a2531c67d","kind":"tag","published_at":"2020-11-18T18:17:33.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.1-compat","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.1-compat","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.1-compat","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.1-compat/manifests"},{"name":"v2.0.1","sha":"7db444abcc29e579152a42357b9ad07463e710a2","kind":"tag","published_at":"2020-11-18T18:16:15.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.1/manifests"},{"name":"v2.0.0-compat","sha":"682ad230cf99549cff93cbc39f9600337f2d0144","kind":"tag","published_at":"2020-11-18T17:42:26.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-compat","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-compat","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-compat","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-compat/manifests"},{"name":"v2.0.0","sha":"fadd4c89a00e3dbeb2687c154c579bb2bd7f994a","kind":"tag","published_at":"2020-11-18T17:09:13.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0/manifests"},{"name":"v2.0.0-alpha.25-compat","sha":"19f927b15fec0bcf7c37f672de72527460d0c839","kind":"tag","published_at":"2020-11-17T13:30:11.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.25-compat","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.25-compat","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.25-compat","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.25-compat/manifests"},{"name":"v2.0.0-alpha.25","sha":"35f82119cdac3f9ad257e6392a595aff8fa843ff","kind":"tag","published_at":"2020-11-17T13:27:54.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.25","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.25","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.25/manifests"},{"name":"v2.0.0-alpha.24-compat","sha":"8e9f683c0aaeb847186929b0f1f863468cb45f9c","kind":"tag","published_at":"2020-11-17T00:54:17.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.24-compat","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.24-compat","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.24-compat","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.24-compat/manifests"},{"name":"v2.0.0-alpha.24","sha":"e701c818a0d0dc775eebac1bc3929aa864166716","kind":"tag","published_at":"2020-11-17T00:52:01.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.24","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.24","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.24","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.24/manifests"},{"name":"v2.0.0-alpha.23-compat","sha":"1c938cd513911243cdca61a38481d6ff4a7d2f38","kind":"tag","published_at":"2020-11-16T19:14:04.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.23-compat","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.23-compat","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.23-compat","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.23-compat/manifests"},{"name":"v2.0.0-alpha.23","sha":"83c685a43e25db9899c4d3f52f2b7290e18f5c9b","kind":"tag","published_at":"2020-11-16T18:12:54.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.23","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.23","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.23","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.23/manifests"},{"name":"v2.0.0-alpha.22","sha":"1d1b87583de1621b8e2e2e8f1ee0d2794d6bb623","kind":"tag","published_at":"2020-11-16T16:47:36.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.22","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.22","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.22","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.22/manifests"},{"name":"v2.0.0-alpha.21","sha":"f57fbb62ae2420b17be0943c80bd1466ccdbcaab","kind":"tag","published_at":"2020-11-15T21:14:55.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.21","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.21","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.21","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.21/manifests"},{"name":"v2.0.0-alpha.20","sha":"042e259265471af8f0e5d9e336b2bab1065d3fd7","kind":"tag","published_at":"2020-11-14T03:26:27.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.20","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.20","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.20","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.20/manifests"},{"name":"v2.0.0-alpha.19","sha":"18e2bd6e15db940598885fb3fc6335c46674a61b","kind":"tag","published_at":"2020-11-14T00:52:11.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.19","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.19","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.19","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.19/manifests"},{"name":"v2.0.0-alpha.18","sha":"869d68d03bd319434e411e73710f8031951094c0","kind":"tag","published_at":"2020-11-14T00:44:28.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.18","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.18","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.18","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.18/manifests"},{"name":"v2.0.0-alpha.17","sha":"823cace551e6d2a326905051ae4293fa7a2c0a6e","kind":"tag","published_at":"2020-11-13T14:45:14.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.17","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.17","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.17/manifests"},{"name":"v2.0.0-alpha.16","sha":"296d568b414a91303c819d4c30252d75c74b0e3b","kind":"tag","published_at":"2020-11-12T13:46:58.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.16","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.16","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.16/manifests"},{"name":"v2.0.0-alpha.15","sha":"93b431d9e740ac31f035ef23d0d6d3b60e37a8f0","kind":"tag","published_at":"2020-11-12T03:00:48.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.15","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.15","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.15","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.15/manifests"},{"name":"v2.0.0-alpha.14","sha":"f9ea7797ae7e50111bf697ad2b8e58f75e5c5c8b","kind":"tag","published_at":"2020-11-11T21:15:26.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.14","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.14","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.14/manifests"},{"name":"v2.0.0-alpha.13","sha":"b9c8a7a65b50df7ea11c7479f51432b52a62a2d8","kind":"tag","published_at":"2020-11-11T13:28:37.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.13","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.13","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.13/manifests"},{"name":"v2.0.0-alpha.12","sha":"fed83c76dc1575c3934aeb900769eddc7f7d641a","kind":"tag","published_at":"2020-11-10T19:26:09.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.12","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.12/manifests"},{"name":"v2.0.0-alpha.11","sha":"229af3bb979b2b9d4078127883db3174d70944e0","kind":"tag","published_at":"2020-11-10T00:11:56.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.11","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.11/manifests"},{"name":"v2.0.0-alpha.10","sha":"3cc2f70bfe4ebbcf2a0a386e3cf0ddc201be7b19","kind":"tag","published_at":"2020-11-09T21:42:04.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.10","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.10/manifests"},{"name":"v2.0.0-alpha.9","sha":"d39ecc56f180fbb917457a7ed6a7fd5e324490ea","kind":"tag","published_at":"2020-11-07T20:15:47.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.9","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.9/manifests"},{"name":"v2.0.0-alpha.8","sha":"43fca1f934d179d8617aea2c3633563a15913726","kind":"tag","published_at":"2020-11-06T14:36:02.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.8","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.8/manifests"},{"name":"v2.0.0-alpha.7","sha":"f2c397a5f7a36c0dad295fa24c8bc5e91f130b55","kind":"tag","published_at":"2020-11-05T12:41:46.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.7","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.7/manifests"},{"name":"v2.0.0-alpha.6","sha":"1dd9ef3b4aadb4aa4cdc9fb663edc3f44903df1c","kind":"tag","published_at":"2020-11-04T15:20:04.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.6/manifests"},{"name":"v2.0.0-alpha.5","sha":"c606d2be232017a177fd8e6da0b27f86bc258a14","kind":"tag","published_at":"2020-10-30T12:56:50.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.5/manifests"},{"name":"v2.0.0-alpha.4","sha":"18c41b36e1796b5079cdbabe96b502f073b9e9a7","kind":"tag","published_at":"2020-10-29T14:18:49.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.4/manifests"},{"name":"v2.0.0-alpha.3","sha":"43c125c4b9552862e656cdca7746d282dc34d019","kind":"tag","published_at":"2020-10-27T15:15:02.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.3/manifests"},{"name":"v2.0.0-alpha.2","sha":"15d6fc471596c5165ae585ec02d92ef939d77e86","kind":"tag","published_at":"2020-10-25T16:47:54.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.2/manifests"},{"name":"v1.9.6","sha":"8f3dbfe7a8be54c2afff46492dbf884c461ffa97","kind":"tag","published_at":"2020-10-23T18:12:14.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.9.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.9.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.6/manifests"},{"name":"v2.0.0-alpha.1","sha":"3e7258eea880b12dbe49bfcd02c5adaeb7feca31","kind":"tag","published_at":"2020-10-21T03:16:54.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v2.0.0-alpha.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v2.0.0-alpha.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v2.0.0-alpha.1/manifests"},{"name":"v1.9.5","sha":"a350ef054f264b2444f2639147630fec7a3eee28","kind":"tag","published_at":"2020-10-19T15:49:31.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.9.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.9.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.5/manifests"},{"name":"v1.9.4","sha":"a2c6dccc74d43d095bdd9163dcdbf82da925a445","kind":"tag","published_at":"2020-10-17T16:55:36.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.9.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.9.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.4/manifests"},{"name":"v1.9.3","sha":"ec68efdab6bc6b972db5d9bfa6099e4a79d7fdbe","kind":"tag","published_at":"2020-10-16T18:50:04.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.9.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.9.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.3/manifests"},{"name":"v1.9.2","sha":"607b714df7451ffb8a1bbaa1cae008e1557027d3","kind":"tag","published_at":"2020-10-14T19:25:22.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.9.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.2/manifests"},{"name":"v1.9.1","sha":"62b1c374730a4cff6470eee773380ba73ab6841f","kind":"tag","published_at":"2020-10-13T12:16:59.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.9.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.1/manifests"},{"name":"v1.9.0","sha":"9b9202ce6af9c79995bfb44bb7e2960e5774a146","kind":"tag","published_at":"2020-10-12T18:57:08.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.9.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.9.0/manifests"},{"name":"v1.8.13","sha":"b0fe70cc18c3debb93ed4d22c55acba4f39f3087","kind":"tag","published_at":"2020-10-10T01:06:27.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.13","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.13","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.13/manifests"},{"name":"v1.8.12","sha":"a6729cccbe8193e9075d86537003b8763a932e5f","kind":"tag","published_at":"2020-10-07T18:10:09.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.12","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.12/manifests"},{"name":"v1.8.11","sha":"906f558181ca91f6c9c02ca3be208f39d05fe813","kind":"commit","published_at":"2020-10-06T18:34:42.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.11","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.11/manifests"},{"name":"v1.8.10","sha":"259dc3cc1e090fc304cdcbce1d5bb087be3e4ff4","kind":"tag","published_at":"2020-09-14T13:13:28.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.10","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.10/manifests"},{"name":"v1.8.9","sha":"2d8cf7fa0df56a1275e6cff7d1e4d1ea9391d16b","kind":"tag","published_at":"2020-09-13T13:49:02.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.9","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.9/manifests"},{"name":"v1.8.8","sha":"6d4d06284d4aae1f488864d757690e05473818e2","kind":"tag","published_at":"2020-09-11T14:17:46.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.8","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.8/manifests"},{"name":"v1.8.7","sha":"fd194f0e7f502ef070cc9099dce452ba2e51943b","kind":"tag","published_at":"2020-09-10T18:46:18.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.7","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.7/manifests"},{"name":"v1.8.6","sha":"e88a4d3cb8a92fa42245540b232b98eb17327942","kind":"tag","published_at":"2020-09-09T14:01:43.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.6/manifests"},{"name":"v1.8.5","sha":"f3a3f6fcdca9a991713997d8f50bc50b1bfd77b1","kind":"tag","published_at":"2020-09-07T23:56:51.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.5/manifests"},{"name":"v1.8.4","sha":"d6b7f19df1652e60a1a620dad1af6d24455b707c","kind":"tag","published_at":"2020-09-07T00:43:40.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.4/manifests"},{"name":"v1.8.3","sha":"cdfcf3ee902bc390cd761ee8ebe5a8f89e6c91d5","kind":"tag","published_at":"2020-09-05T21:41:14.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.3/manifests"},{"name":"v1.8.2","sha":"b26746a311c30c5292df6dc70a34269411755b00","kind":"tag","published_at":"2020-09-05T00:00:03.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.2/manifests"},{"name":"v1.8.1","sha":"8e49e484df0ae1bfba3c92c812481c7d54941c35","kind":"commit","published_at":"2020-09-04T22:47:01.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.1/manifests"},{"name":"v1.8.0","sha":"704ddee1e0a6c91b2a898e0aaa8f547f359c5700","kind":"tag","published_at":"2020-09-04T19:09:53.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.8.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.8.0/manifests"},{"name":"v1.7.6","sha":"a2956f8a75dec0047764abddc7ca490a2ca4596c","kind":"tag","published_at":"2020-08-29T10:29:12.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.7.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.7.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.6/manifests"},{"name":"v1.7.5","sha":"d62c78beeb427d0b751d44cef1ee54f7fd676762","kind":"tag","published_at":"2020-08-26T17:03:18.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.7.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.7.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.5/manifests"},{"name":"v1.7.4","sha":"b2b9424a44541a431c58c1185aa9f5b28708ae0a","kind":"tag","published_at":"2020-08-26T11:47:04.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.7.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.7.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.4/manifests"},{"name":"v1.7.3","sha":"52f1a2d13675882a0275b73f3431d8c3ce50503c","kind":"tag","published_at":"2020-08-20T14:51:43.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.7.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.7.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.3/manifests"},{"name":"v1.7.2","sha":"239da620ff3fbe8f2b29a441d56597e987e23366","kind":"tag","published_at":"2020-08-19T15:03:08.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.7.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.7.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.2/manifests"},{"name":"v1.7.1","sha":"d3606b76dc471882dc5b45bc4bf25561a577b640","kind":"tag","published_at":"2020-08-19T01:15:07.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.7.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.1/manifests"},{"name":"v1.7.0","sha":"c16bf207bcc76c5b1111dca8586ab0c28bcb0af0","kind":"tag","published_at":"2020-08-18T17:29:12.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.7.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.7.0/manifests"},{"name":"v1.6.3","sha":"ec1d222cb8c36f647cee66be1375680675158305","kind":"tag","published_at":"2020-08-18T13:13:41.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.6.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.6.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.6.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.6.3/manifests"},{"name":"v1.6.2","sha":"fb2c85e309da94ef973037b20aa2dec5e82b0ecd","kind":"tag","published_at":"2020-08-03T15:47:03.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.6.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.6.2/manifests"},{"name":"v1.6.1","sha":"8e5d8d12784145332b5bea334fffd5d069b42bbb","kind":"tag","published_at":"2020-08-02T12:14:57.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.6.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.6.1/manifests"},{"name":"v1.6.0","sha":"f8d7f245d5e49af84c0d9f12448781e64ab4e66d","kind":"tag","published_at":"2020-07-28T16:39:20.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.6.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.6.0/manifests"},{"name":"v1.5.2","sha":"4ee53f315adde5e8471162e7b8a814faafef95dd","kind":"tag","published_at":"2020-07-21T14:22:06.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.5.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.5.2/manifests"},{"name":"v1.5.1","sha":"da070bd89fd906619561fabf44ef2153d96cb7b5","kind":"tag","published_at":"2020-07-15T21:33:03.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.5.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.5.1/manifests"},{"name":"v1.5.0","sha":"c8d87f84a233e110345846b140ebceb3e49b9e17","kind":"tag","published_at":"2020-07-15T18:42:06.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.5.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.5.0/manifests"},{"name":"v0.0.0-658250a96","sha":"15d6d6810111c5ab192fbe9911be12b370b3f189","kind":"tag","published_at":"2020-07-12T18:47:14.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.0.0-658250a96","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.0.0-658250a96","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-658250a96","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.0.0-658250a96/manifests"},{"name":"v1.4.6","sha":"a6d434375be47d717ae90b506c7924f5d2089210","kind":"tag","published_at":"2020-05-08T17:26:50.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.4.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.4.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.6/manifests"},{"name":"v1.4.5","sha":"99a5fea06d85f218b01842c0d7abe8e6eee0f969","kind":"tag","published_at":"2020-05-06T12:49:05.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.4.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.4.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.5/manifests"},{"name":"v1.4.4","sha":"85194b8e57312fcc79e148a988e8077f01a54f9d","kind":"tag","published_at":"2020-05-01T19:31:24.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.4.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.4.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.4/manifests"},{"name":"v1.4.3","sha":"6aef9172e15eeb3cd819f736dc0869acb94e3d3d","kind":"tag","published_at":"2020-05-01T19:21:35.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.4.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.3/manifests"},{"name":"v1.4.2","sha":"c2b0407ffdc3d6c3cb3323f79d07f7185026532a","kind":"tag","published_at":"2020-05-01T12:25:52.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.4.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.2/manifests"},{"name":"v1.4.1","sha":"e52c59a7588a17c04c250fc3d41c182678895061","kind":"tag","published_at":"2020-04-30T13:12:11.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.4.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"20348ae914d4f2c8ab731d79c8f8cc5e308d43cd","kind":"tag","published_at":"2020-04-29T20:37:25.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.4.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.4.0/manifests"},{"name":"v1.3.5","sha":"30e0cb10b7c177eb8190166da9a77944c6bf296d","kind":"tag","published_at":"2020-04-23T11:58:36.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.3.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.3.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.5/manifests"},{"name":"v1.3.4","sha":"f7134aae273afc98216e3a8982e9a286c3c71b65","kind":"tag","published_at":"2020-04-21T20:08:45.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.3.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.3.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.4/manifests"},{"name":"v1.3.3","sha":"72583c5c84989b0f74ca7654144e195c88e4fc8c","kind":"tag","published_at":"2020-04-21T09:21:05.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.3.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.3/manifests"},{"name":"v1.3.2","sha":"d5e64c419930160bb2a0047e8a9548db421e4ff7","kind":"tag","published_at":"2020-04-21T09:14:59.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.3.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.2/manifests"},{"name":"v1.3.1","sha":"5b3f8b5461a4e2a0a7eb6169985d37581f609ad5","kind":"tag","published_at":"2020-04-21T01:12:38.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.3.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"d710db5cc3418a784265ef5758f0bfc7db7dabf8","kind":"tag","published_at":"2020-04-21T00:36:52.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.3.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"61e5ac5f98468decf453711bcfa9460752f1ba27","kind":"tag","published_at":"2020-02-05T14:46:28.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.2.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0/manifests"},{"name":"v1.2.0-canary.8","sha":"834cee4c3ee4bd57fc70f70c00a050e6a41cdec0","kind":"tag","published_at":"2020-02-05T14:20:52.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.2.0-canary.8","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.2.0-canary.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.8/manifests"},{"name":"v1.2.0-canary.7","sha":"0ea9eba75be647fb2b6bdc4a2875c439973db512","kind":"tag","published_at":"2020-02-03T18:44:31.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.2.0-canary.7","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.2.0-canary.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.7/manifests"},{"name":"v1.2.0-canary.6","sha":"ce6ad1e0e8dc3a8e4bcf9e7c44e49cfe9e341337","kind":"tag","published_at":"2020-02-03T17:59:16.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.2.0-canary.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.2.0-canary.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.6/manifests"},{"name":"v1.2.0-canary.5","sha":"55812a11c486d44fe4b4d90f8c4f3cfcf01c33de","kind":"tag","published_at":"2020-01-08T20:28:12.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.2.0-canary.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.2.0-canary.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.5/manifests"},{"name":"v1.2.0-canary.4","sha":"a3989f73380a5fd48bf6ffea1b2be7439bb19d94","kind":"tag","published_at":"2020-01-08T15:57:42.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.2.0-canary.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.2.0-canary.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.4/manifests"},{"name":"v1.2.0-canary.3","sha":"c745007d24b774e918d21a9194fb12c959e3404c","kind":"tag","published_at":"2020-01-08T15:41:51.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.2.0-canary.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.2.0-canary.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.3/manifests"},{"name":"v1.2.0-canary.2","sha":"3a85f56824202300b3a5b5c65eff42397b37c293","kind":"tag","published_at":"2019-12-20T16:10:32.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.2.0-canary.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.2.0-canary.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.2/manifests"},{"name":"v1.1.4","sha":"2216727e5849e301d9369fa160f6f1fad0e74cea","kind":"tag","published_at":"2019-11-25T16:45:21.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.1.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.1.4/manifests"},{"name":"v1.1.3","sha":"109a43503f2e29cc810ef5648925c1d6b34075ea","kind":"tag","published_at":"2019-10-22T17:01:57.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.1.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.1.3/manifests"},{"name":"v1.2.0-canary.1","sha":"5ab54986ecefd94889d571357d2d3e1d31d8e91d","kind":"tag","published_at":"2019-10-22T14:01:51.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.2.0-canary.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.2.0-canary.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.1/manifests"},{"name":"v1.2.0-canary.0","sha":"73de2c341ffce21aff36a64395b23fc2d64761ca","kind":"tag","published_at":"2019-10-14T16:08:11.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.2.0-canary.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.2.0-canary.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.2.0-canary.0/manifests"},{"name":"v1.1.2","sha":"c2dcecfff6753805cec7ad4610de56ebc71d86e3","kind":"tag","published_at":"2019-08-14T12:01:48.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.1.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.1.2/manifests"},{"name":"v1.1.1","sha":"db1bd5651bf913bf113ff1209b4f6b64cacfcaa6","kind":"tag","published_at":"2019-08-09T20:12:09.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.1.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"f5fe5187f9ca38241e8ed37156806d8a17bf8a27","kind":"tag","published_at":"2019-08-06T18:15:54.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.1.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.1.0/manifests"},{"name":"v1.0.6","sha":"449a07cfa5aa58295c3ce5fceb964d83303c3ae5","kind":"tag","published_at":"2019-08-01T00:01:32.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.6/manifests"},{"name":"v1.0.5","sha":"5a6894ea812aadb43ff5bd3b1eadb486c2d0b0c9","kind":"tag","published_at":"2019-07-11T12:11:54.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.5/manifests"},{"name":"v1.0.4","sha":"ca670f5a764d53185a16545f8b51868af1fd47b0","kind":"tag","published_at":"2019-06-11T13:05:55.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.4/manifests"},{"name":"v1.0.3","sha":"236b5634e09faaad5502bf99247875a90859e9cd","kind":"tag","published_at":"2019-06-01T19:51:13.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.3/manifests"},{"name":"v1.0.2","sha":"ee42b26f942f951b860b550e59881423979cc3ce","kind":"tag","published_at":"2019-05-27T06:16:55.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"4f3c6b4dcddea7731bec3b278987f6560cd482f2","kind":"tag","published_at":"2019-05-13T17:32:57.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"46f1f97245379dc15c5721f75bda2ecffb8f659c","kind":"tag","published_at":"2019-05-13T13:50:45.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0/manifests"},{"name":"v1.0.0-beta.10","sha":"fb69a8bc72b0a1d5eed254249b521d8e2116e46a","kind":"tag","published_at":"2019-05-12T13:58:03.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0-beta.10","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0-beta.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.10/manifests"},{"name":"v1.0.0-beta.9","sha":"2d0e9d1fc83a396d0aeff4b8e5a1898db7018254","kind":"tag","published_at":"2019-05-12T13:54:25.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0-beta.9","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0-beta.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.9/manifests"},{"name":"v1.0.0-beta.8","sha":"f46022a0d5e575fb61079b0066dce1f0ffa07867","kind":"tag","published_at":"2019-04-28T11:04:08.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0-beta.8","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0-beta.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.8/manifests"},{"name":"v1.0.0-beta.7","sha":"f6a632dbe2f755e60ba6fa208399977ac9393e6b","kind":"tag","published_at":"2019-04-27T20:55:40.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0-beta.7","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0-beta.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.7/manifests"},{"name":"v1.0.0-beta.6","sha":"93896615b474aacb8fb324c03776eefa9ed1c9db","kind":"tag","published_at":"2019-04-27T15:53:26.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0-beta.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0-beta.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.6/manifests"},{"name":"v1.0.0-beta.5","sha":"ab07e6809765b0a909d8ffd53241730a7049f215","kind":"tag","published_at":"2019-04-18T19:34:29.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0-beta.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0-beta.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.5/manifests"},{"name":"v1.0.0-beta.4","sha":"52787f47d9b7aec780533be6ce9ea14405ed46bd","kind":"tag","published_at":"2019-03-29T17:27:15.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0-beta.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0-beta.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.4/manifests"},{"name":"v1.0.0-beta.3","sha":"990cb2a2acd0e3f986c5e6dfc8925893a3f5e8e5","kind":"tag","published_at":"2019-03-18T17:20:21.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0-beta.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0-beta.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.3/manifests"},{"name":"v1.0.0-beta.2","sha":"e979ec44a861487ae39a16be70040667e48ca661","kind":"tag","published_at":"2019-03-16T23:39:43.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0-beta.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0-beta.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.2/manifests"},{"name":"v1.0.0-beta.1","sha":"41d1c29d62dd3073e41e0d59de5e785cf3912d27","kind":"tag","published_at":"2019-03-15T15:52:42.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v1.0.0-beta.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v1.0.0-beta.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v1.0.0-beta.1/manifests"},{"name":"v0.7.4","sha":"66e4d1b3192e8013df336c7dff61f561243bd423","kind":"tag","published_at":"2019-01-23T12:56:27.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.7.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.7.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.7.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.7.4/manifests"},{"name":"v0.7.3","sha":"ba86cb37d3f93a4a8516d196e9d014c86c727d8c","kind":"tag","published_at":"2018-12-13T19:23:54.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.7.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.7.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.7.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.7.3/manifests"},{"name":"v0.7.2","sha":"f43257f45d6b05972e7cb8ecaff179e30fa1aafc","kind":"tag","published_at":"2018-11-05T13:54:40.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.7.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.7.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.7.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.7.2/manifests"},{"name":"v0.7.1","sha":"69b41b2dafdd40dec2fb1e88bb106a1ae9f9a80e","kind":"tag","published_at":"2018-11-05T13:36:18.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.7.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.7.1/manifests"},{"name":"v0.7.0","sha":"4f5ad9031fb9b90235a24ce9f090034e17ba9594","kind":"tag","published_at":"2018-10-31T19:55:49.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.7.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.7.0/manifests"},{"name":"v0.6.6","sha":"62ae545a271ddf17dcc9f3218526ec0b42c336c7","kind":"tag","published_at":"2018-09-21T18:53:15.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.6.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.6.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.6/manifests"},{"name":"v0.6.5","sha":"95f1d90b70c4bb318f35ea475b903d07aee01fb4","kind":"tag","published_at":"2018-08-14T17:40:52.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.6.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.6.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.5/manifests"},{"name":"v0.6.4","sha":"01e74f7b4c0444ce00e8ed26620af481957524bc","kind":"tag","published_at":"2018-07-16T12:47:45.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.6.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.6.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.4/manifests"},{"name":"v0.6.3","sha":"89a18e272ceac1f3881fd9d2c98db707ac67a952","kind":"tag","published_at":"2018-07-11T19:54:25.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.6.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.6.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.3/manifests"},{"name":"v0.6.2","sha":"9afe6154be707c7012f5d81ddb2810dda59eab07","kind":"tag","published_at":"2018-07-11T16:35:23.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.6.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.2/manifests"},{"name":"v0.6.1","sha":"c14076742b141b1aa16bad97295b4a8b819e8a6d","kind":"tag","published_at":"2018-06-22T11:53:23.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.6.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.1/manifests"},{"name":"v0.6.0","sha":"e8ca4d0be8697351ddddea04993453ae25175a81","kind":"tag","published_at":"2018-06-21T16:03:27.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.6.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.6.0/manifests"},{"name":"v0.5.3","sha":"01104b64bb00aca60e4cb51f0082e15ba4d2f23d","kind":"tag","published_at":"2018-05-07T18:36:29.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.5.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.5.3/manifests"},{"name":"v0.5.2","sha":"64d3cf5e2a29a8dee3dc6a67039973c93de5309a","kind":"tag","published_at":"2018-03-29T16:11:25.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.5.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.5.2/manifests"},{"name":"v0.5.1","sha":"e1f3286141db27ac6d2d304d3730f152dd6e43de","kind":"tag","published_at":"2018-03-13T21:11:39.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.5.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.5.1/manifests"},{"name":"v0.5.0","sha":"c32519d9e1038c3587c92fd950a3dbdb7552185f","kind":"tag","published_at":"2018-03-13T20:13:16.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.5.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.5.0/manifests"},{"name":"v0.4.3","sha":"f00e1df92bfa9a6f84bb3b8a83204aa51e96b97c","kind":"tag","published_at":"2018-03-05T15:32:15.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.4.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.4.3/manifests"},{"name":"v0.4.2","sha":"c8fbeab11594ff2117e2b99e94a4ab4d2e550d5c","kind":"tag","published_at":"2018-03-01T13:48:19.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.4.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.4.2/manifests"},{"name":"v0.4.1","sha":"f87c930ff694fdbc6d7276c6e017fd399bc38db3","kind":"tag","published_at":"2018-01-22T15:09:12.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.4.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"0972b0885563e4146bcd49a8cc8c50a3e91028f2","kind":"tag","published_at":"2017-12-15T15:31:23.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.4.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.4.0/manifests"},{"name":"v0.3.0","sha":"7a0a0a8bd7d0ead66cd95d9e307d01c778a5e842","kind":"tag","published_at":"2017-12-01T14:57:04.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.3.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.3.0/manifests"},{"name":"v0.2.2","sha":"65319df7ca3fc6d031f2cc0074e399657442c4b4","kind":"tag","published_at":"2017-11-19T17:22:17.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.2.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"6ccac3d54e18ac62edaa4ebeb1343da0064ebc1c","kind":"tag","published_at":"2017-11-18T15:52:08.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.2.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"be3f9d38505ff7be9e5f507c054c08d5cc221960","kind":"tag","published_at":"2017-11-17T21:04:53.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.2.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.2.0/manifests"},{"name":"v0.1.6","sha":"6bc3b0a9dd53f77555418b7b18d9b85ae7902c6e","kind":"tag","published_at":"2017-11-09T14:28:43.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.1.6","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.1.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.6/manifests"},{"name":"v0.1.5","sha":"30e57119a69df19321d9b41eb2a4c40d33dbdcc0","kind":"tag","published_at":"2017-11-08T13:36:56.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.1.5","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.5/manifests"},{"name":"v0.1.4","sha":"7b5c4412e8f4333054fa4820775f279c4dd69361","kind":"tag","published_at":"2017-11-06T16:44:43.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.1.4","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.4/manifests"},{"name":"v0.1.3","sha":"bab25dc8b818d1ec8e00e6f5f62634c3c413879c","kind":"tag","published_at":"2017-11-02T18:13:59.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.1.3","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.3/manifests"},{"name":"v0.1.2","sha":"0b9594f70d69e9a79b97f28e775bdc36f1067ab2","kind":"tag","published_at":"2017-11-01T22:03:04.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.1.2","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.2/manifests"},{"name":"v0.1.1","sha":"8e752f8e3ab8c54e42579764007480a3809ab6d5","kind":"tag","published_at":"2017-11-01T19:18:27.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.1.1","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"688d6fabaaab019b05dfc0d20c5190a9c580d2f0","kind":"commit","published_at":"2017-11-01T02:21:12.000Z","download_url":"https://codeload.github.com/tailwindlabs/tailwindcss/tar.gz/v0.1.0","html_url":"https://github.com/tailwindlabs/tailwindcss/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tailwindlabs%2Ftailwindcss/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2024-09-30T02:09:26.736Z","dependent_packages_count":2,"downloads":12669584,"downloads_period":"last-month","dependent_repos_count":4,"rankings":{"downloads":1.4819627376843796,"dependent_repos_count":5.564886281831931,"dependent_packages_count":8.836898080790972,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":5.294582366769094},"purl":"pkg:npm/%40tailwindcss/oxide-linux-x64-gnu","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/npm/@tailwindcss/oxide-linux-x64-gnu","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/npm/@tailwindcss/oxide-linux-x64-gnu","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/npm/@tailwindcss/oxide-linux-x64-gnu/dependencies","status":null,"funding_links":[],"critical":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@tailwindcss%2Foxide-linux-x64-gnu/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@tailwindcss%2Foxide-linux-x64-gnu/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@tailwindcss%2Foxide-linux-x64-gnu/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/@tailwindcss%2Foxide-linux-x64-gnu/related_packages","maintainers":[{"uuid":"malfaitrobin","login":"malfaitrobin","name":null,"email":"malfait.robin@gmail.com","url":null,"packages_count":77,"html_url":"https://www.npmjs.com/~malfaitrobin","role":null,"created_at":"2022-11-28T23:21:25.425Z","updated_at":"2022-11-28T23:21:25.425Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/malfaitrobin/packages"},{"uuid":"adamwathan","login":"adamwathan","name":null,"email":"adam@adamwathan.me","url":null,"packages_count":47,"html_url":"https://www.npmjs.com/~adamwathan","role":null,"created_at":"2022-11-28T23:21:25.409Z","updated_at":"2022-11-28T23:21:25.409Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/adamwathan/packages"},{"uuid":"reinink","login":"reinink","name":null,"email":"jonathan@reinink.ca","url":null,"packages_count":56,"html_url":"https://www.npmjs.com/~reinink","role":null,"created_at":"2022-11-28T23:21:25.401Z","updated_at":"2022-11-28T23:21:25.401Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/reinink/packages"},{"uuid":"thecrypticace","login":"thecrypticace","name":null,"email":"thecrypticace@gmail.com","url":null,"packages_count":56,"html_url":"https://www.npmjs.com/~thecrypticace","role":null,"created_at":"2022-11-28T23:21:25.393Z","updated_at":"2022-11-28T23:21:25.393Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/npmjs.org/maintainers/thecrypticace/packages"}],"registry":{"name":"npmjs.org","url":"https://registry.npmjs.org","ecosystem":"npm","default":true,"packages_count":5008191,"maintainers_count":1013077,"namespaces_count":295677,"keywords_count":700469,"github":"npm","metadata":{"funded_packages_count":150263},"icon_url":"https://github.com/npm.png","created_at":"2022-04-04T15:19:23.081Z","updated_at":"2025-06-07T05:25:21.688Z","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":138,"unique_repositories_count_past_30_days":15,"recent_issues":[{"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":"4517030321","node_id":"PR_kwDOR1gFYs7fC3cm","number":198,"state":"closed","title":"chore(deps): bump the npm-frontend group across 1 directory with 14 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":"2026-05-26T00:49:08.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-25T12:52:23.000Z","updated_at":"2026-05-26T00:49:18.000Z","time_to_close":43005,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"npm-frontend","update_count":14,"packages":[{"name":"@apollo/client","old_version":"3.14.1","new_version":"4.2.0","repository_url":"https://github.com/apollographql/apollo-client"},{"name":"@tiptap/pm","old_version":"2.27.2","new_version":"3.23.6","repository_url":"https://github.com/ueberdosis/tiptap"},{"name":"@tiptap/react","old_version":"2.27.2","new_version":"3.23.6","repository_url":"https://github.com/ueberdosis/tiptap"},{"name":"@tiptap/starter-kit","old_version":"2.27.2","new_version":"3.23.6","repository_url":"https://github.com/ueberdosis/tiptap"},{"name":"lucide-react","old_version":"0.562.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"@eslint/js","old_version":"9.39.4","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@types/node","old_version":"24.12.4","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"eslint","old_version":"9.39.4","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"globals","old_version":"16.5.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"jsdom","old_version":"26.1.0","new_version":"29.1.1","repository_url":"https://github.com/jsdom/jsdom"},{"name":"vitest","old_version":"3.2.4","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@rolldown/binding-linux-x64-gnu","old_version":"1.0.0-rc.15","new_version":"1.0.2","repository_url":"https://github.com/rolldown/rolldown"},{"name":"@rollup/rollup-linux-x64-gnu","old_version":"4.60.2","new_version":"4.60.4","repository_url":"https://github.com/rollup/rollup"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm-frontend group with 14 updates in the /frontend directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@apollo/client](https://github.com/apollographql/apollo-client) | `3.14.1` | `4.2.0` |\n| [@tiptap/pm](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm) | `2.27.2` | `3.23.6` |\n| [@tiptap/react](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react) | `2.27.2` | `3.23.6` |\n| [@tiptap/starter-kit](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit) | `2.27.2` | `3.23.6` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.562.0` | `1.16.0` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.4` | `10.0.1` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `24.12.4` | `25.9.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.4` | `10.4.0` |\n| [globals](https://github.com/sindresorhus/globals) | `16.5.0` | `17.6.0` |\n| [jsdom](https://github.com/jsdom/jsdom) | `26.1.0` | `29.1.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `3.2.4` | `4.1.7` |\n| [@rolldown/binding-linux-x64-gnu](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown) | `1.0.0-rc.15` | `1.0.2` |\n| [@rollup/rollup-linux-x64-gnu](https://github.com/rollup/rollup) | `4.60.2` | `4.60.4` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.2` | `4.3.0` |\n\n\nUpdates `@apollo/client` from 3.14.1 to 4.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apollographql/apollo-client/releases\"\u003e@​apollo/client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​apollo/client\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.2.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/apollographql/apollo-client/pull/13132\"\u003e#13132\u003c/a\u003e \u003ca href=\"https://github.com/apollographql/apollo-client/commit/f3ce805425d10a9666218a8e109288a2d46dcab1\"\u003e\u003ccode\u003ef3ce805\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/phryneas\"\u003e\u003ccode\u003e@​phryneas\u003c/code\u003e\u003c/a\u003e! - Introduce \u0026quot;classic\u0026quot; and \u0026quot;modern\u0026quot; method and hook signatures.\u003c/p\u003e\n\u003cp\u003eApollo Client 4.2 introduces two signature styles for methods and hooks. All signatures previously present are now \u0026quot;classic\u0026quot; signatures, and a new set of \u0026quot;modern\u0026quot; signatures are added alongside them.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eClassic signatures\u003c/strong\u003e are the default and are identical to the signatures before Apollo Client 4.2, preserving backward compatibility. Classic signatures still work with manually specified TypeScript generics (e.g., \u003ccode\u003euseSuspenseQuery\u0026lt;MyData\u0026gt;(...)\u003c/code\u003e). However, manually specifying generics has been discouraged for a long time—instead, we recommend using \u003ccode\u003eTypedDocumentNode\u003c/code\u003e to automatically infer types, which provides more accurate results without any manual annotations.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eModern signatures\u003c/strong\u003e automatically incorporate your declared \u003ccode\u003edefaultOptions\u003c/code\u003e into return types, providing more accurate types. Modern signatures infer types from the document node and do not support manually passing generic type arguments; TypeScript will produce a type error if you attempt to do so.\u003c/p\u003e\n\u003cp\u003eMethods and hooks automatically switch to modern signatures the moment any non-optional property is declared in \u003ccode\u003eDeclareDefaultOptions\u003c/code\u003e. The switch happens across all methods and hooks globally:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  namespace ApolloClient {\n    namespace DeclareDefaultOptions {\n      interface WatchQuery {\n        errorPolicy: \u0026quot;all\u0026quot;; // non-optional → modern signatures activated automatically\n      }\n    }\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eUsers can also manually switch to modern signatures without declaring any \u003ccode\u003edefaultOptions\u003c/code\u003e, for example when wanting accurate type inference without relying on global \u003ccode\u003edefaultOptions\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  export interface TypeOverrides {\n    signatureStyle: \u0026quot;modern\u0026quot;;\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eUsers can do a global \u003ccode\u003eDeclareDefaultOptions\u003c/code\u003e type augmentation and then manually switch back to \u0026quot;classic\u0026quot; for migration purposes:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  export interface TypeOverrides {\n    signatureStyle: \u0026quot;classic\u0026quot;;\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apollographql/apollo-client/blob/main/CHANGELOG.md\"\u003e@​apollo/client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.2.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/apollographql/apollo-client/pull/13132\"\u003e#13132\u003c/a\u003e \u003ca href=\"https://github.com/apollographql/apollo-client/commit/f3ce805425d10a9666218a8e109288a2d46dcab1\"\u003e\u003ccode\u003ef3ce805\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/phryneas\"\u003e\u003ccode\u003e@​phryneas\u003c/code\u003e\u003c/a\u003e! - Introduce \u0026quot;classic\u0026quot; and \u0026quot;modern\u0026quot; method and hook signatures.\u003c/p\u003e\n\u003cp\u003eApollo Client 4.2 introduces two signature styles for methods and hooks. All signatures previously present are now \u0026quot;classic\u0026quot; signatures, and a new set of \u0026quot;modern\u0026quot; signatures are added alongside them.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eClassic signatures\u003c/strong\u003e are the default and are identical to the signatures before Apollo Client 4.2, preserving backward compatibility. Classic signatures still work with manually specified TypeScript generics (e.g., \u003ccode\u003euseSuspenseQuery\u0026lt;MyData\u0026gt;(...)\u003c/code\u003e). However, manually specifying generics has been discouraged for a long time—instead, we recommend using \u003ccode\u003eTypedDocumentNode\u003c/code\u003e to automatically infer types, which provides more accurate results without any manual annotations.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eModern signatures\u003c/strong\u003e automatically incorporate your declared \u003ccode\u003edefaultOptions\u003c/code\u003e into return types, providing more accurate types. Modern signatures infer types from the document node and do not support manually passing generic type arguments; TypeScript will produce a type error if you attempt to do so.\u003c/p\u003e\n\u003cp\u003eMethods and hooks automatically switch to modern signatures the moment any non-optional property is declared in \u003ccode\u003eDeclareDefaultOptions\u003c/code\u003e. The switch happens across all methods and hooks globally:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  namespace ApolloClient {\n    namespace DeclareDefaultOptions {\n      interface WatchQuery {\n        errorPolicy: \u0026quot;all\u0026quot;; // non-optional → modern signatures activated automatically\n      }\n    }\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eUsers can also manually switch to modern signatures without declaring any \u003ccode\u003edefaultOptions\u003c/code\u003e, for example when wanting accurate type inference without relying on global \u003ccode\u003edefaultOptions\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  export interface TypeOverrides {\n    signatureStyle: \u0026quot;modern\u0026quot;;\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eUsers can do a global \u003ccode\u003eDeclareDefaultOptions\u003c/code\u003e type augmentation and then manually switch back to \u0026quot;classic\u0026quot; for migration purposes:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  export interface TypeOverrides {\n    signatureStyle: \u0026quot;classic\u0026quot;;\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/e010bdd239b5c10415d4b70ca791467cde12fc88\"\u003e\u003ccode\u003ee010bdd\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13241\"\u003e#13241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/9c4c01a640b43bfb47bd52b25d5881c4ad7bec71\"\u003e\u003ccode\u003e9c4c01a\u003c/code\u003e\u003c/a\u003e Release 4.2 (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13129\"\u003e#13129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/222838e99bc6054120cc1f881bb225b1ef049de9\"\u003e\u003ccode\u003e222838e\u003c/code\u003e\u003c/a\u003e Exit prerelease mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/7d3a533c811a8423536ceeebccc06413ded5b6a3\"\u003e\u003ccode\u003e7d3a533\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into release-4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/f20d591bbf74cb4f0d87ec9a14b93a59fe46b039\"\u003e\u003ccode\u003ef20d591\u003c/code\u003e\u003c/a\u003e chore(deps): update actions/create-github-app-token digest to d72941d (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13239\"\u003e#13239\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/d4a28b6142e47164c8a24bd8c05a8aa3f1ce4eee\"\u003e\u003ccode\u003ed4a28b6\u003c/code\u003e\u003c/a\u003e chore(deps): pin dependencies (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13237\"\u003e#13237\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/c1f39cf5402b052ab92886a1857840a745aee02b\"\u003e\u003ccode\u003ec1f39cf\u003c/code\u003e\u003c/a\u003e ci: pin Actions@SHA and disable cache on workflows with elevated OIDC permiss...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/511048b7bd6253a38a6b7ebe58e9674a39c74273\"\u003e\u003ccode\u003e511048b\u003c/code\u003e\u003c/a\u003e Event-based refetching docs (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13228\"\u003e#13228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/d1f68f1a5fdb7c6915a72b2426cad373a0526c06\"\u003e\u003ccode\u003ed1f68f1\u003c/code\u003e\u003c/a\u003e Version Packages (rc) (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13234\"\u003e#13234\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/f1b541fed4111028b6842727178288156582e669\"\u003e\u003ccode\u003ef1b541f\u003c/code\u003e\u003c/a\u003e Prepare for rc release (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13232\"\u003e#13232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apollographql/apollo-client/compare/v3.14.1...@apollo/client@4.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tiptap/pm` from 2.27.2 to 3.23.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/releases\"\u003e@​tiptap/pm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.23.6\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extension-drag-handle\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003eDragHandle\u003c/strong\u003e: Added \u003ccode\u003edragImageProperties\u003c/code\u003e option to limit which CSS properties are cloned for the drag image. By default all ~300+ computed styles are copied; setting this to a subset (e.g. \u003ccode\u003e['color', 'background-color', 'font-size']\u003c/code\u003e) reduces the cost when dragging selections with complex nodes.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-collaboration\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-node-range\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: Fix deleteSelection to properly handle inline nodes with \u003ccode\u003etext*\u003c/code\u003e content. The selection is now expanded to include the entire inline node boundaries when deleting, preventing incorrect collapse of inline text nodes.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extensions\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003ePlaceholder\u003c/strong\u003e: Replaced full-document \u003ccode\u003edoc.descendants()\u003c/code\u003e traversal with a cursor-resolved fast path for the default config and viewport-limited scanning for the non-default config, significantly reducing decoration overhead on large documents.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.23.5\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/markdown\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix extra mark tokens after inline atom nodes during Markdown serialization\u003c/li\u003e\n\u003cli\u003e7bf0e73: Fix adjacent marks of the same type with different attributes being merged during Markdown serialization\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix $pos() returning correct node for non-text atom nodes instead of doc node\u003c/li\u003e\n\u003cli\u003e7bf0e73: fix(nodeview): eliminate unnecessary re-renders, add opt-in position tracking\nNodeViews no longer re-render when decorations or position change without\ncontent changes. Added \u003ccode\u003etrackNodeViewPosition\u003c/code\u003e option — when enabled, the\ncomponent re-renders on every position shift so calls to \u003ccode\u003egetPos()\u003c/code\u003e stay\ncurrent in render output. Removed the internal \u003ccode\u003enodeViewPositionRegistry\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/blob/main/packages/pm/CHANGELOG.md\"\u003e@​tiptap/pm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.23.6\u003c/h2\u003e\n\u003ch2\u003e3.23.5\u003c/h2\u003e\n\u003ch2\u003e3.23.4\u003c/h2\u003e\n\u003ch2\u003e3.23.3\u003c/h2\u003e\n\u003ch2\u003e3.23.2\u003c/h2\u003e\n\u003ch2\u003e3.23.1\u003c/h2\u003e\n\u003ch2\u003e3.23.0\u003c/h2\u003e\n\u003ch2\u003e3.22.5\u003c/h2\u003e\n\u003ch2\u003e3.22.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e27ea931: Fix dependencies installation after packages updates producing peer dependency resolution conflicts\u003c/li\u003e\n\u003cli\u003e032f8f1: Remove unused ProseMirror packages from \u003ccode\u003e@​tiptap/pm\u003c/code\u003e to reduce bundle size\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.22.3\u003c/h2\u003e\n\u003ch2\u003e3.22.2\u003c/h2\u003e\n\u003ch2\u003e3.22.1\u003c/h2\u003e\n\u003ch2\u003e3.22.0\u003c/h2\u003e\n\u003ch2\u003e3.21.0\u003c/h2\u003e\n\u003ch2\u003e3.20.6\u003c/h2\u003e\n\u003ch2\u003e3.20.5\u003c/h2\u003e\n\u003ch2\u003e3.20.4\u003c/h2\u003e\n\u003ch2\u003e3.20.3\u003c/h2\u003e\n\u003ch2\u003e3.20.2\u003c/h2\u003e\n\u003ch2\u003e3.20.1\u003c/h2\u003e\n\u003ch2\u003e3.20.0\u003c/h2\u003e\n\u003ch2\u003e3.19.0\u003c/h2\u003e\n\u003ch2\u003e3.18.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/195b13f719efc1bd3d95a79ffeb2105ee3118295\"\u003e\u003ccode\u003e195b13f\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7854\"\u003e#7854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/d9daae031a4f72ae81af039a721df66f5c0c2696\"\u003e\u003ccode\u003ed9daae0\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7835\"\u003e#7835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/9d9cc06a33e70c0af7576e6d1250a1c4c596ba43\"\u003e\u003ccode\u003e9d9cc06\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7822\"\u003e#7822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0f05ae73b4d242583f5ed4dedf16dd163756f23f\"\u003e\u003ccode\u003e0f05ae7\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7821\"\u003e#7821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/817c490e7970e75aa3951d9f96e8b52ec2fe2714\"\u003e\u003ccode\u003e817c490\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/a48290e543a4ff60c434b511419640b536acdcfe\"\u003e\u003ccode\u003ea48290e\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7808\"\u003e#7808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0520d9d62ead17da6ec444d045a44c744b22db95\"\u003e\u003ccode\u003e0520d9d\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7784\"\u003e#7784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/898a8ed9b21ffbe9ade9a53be9b213acf511ffd3\"\u003e\u003ccode\u003e898a8ed\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7756\"\u003e#7756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/dec97359f25684d53e577abd72c503253713fedf\"\u003e\u003ccode\u003edec9735\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7727\"\u003e#7727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/032f8f1f87bde93d2fd8225e2d963d4f8be9f588\"\u003e\u003ccode\u003e032f8f1\u003c/code\u003e\u003c/a\u003e chore(pm): remove unused ProseMirror packages from \u003ccode\u003e@​tiptap/pm\u003c/code\u003e (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7749\"\u003e#7749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ueberdosis/tiptap/commits/v3.23.6/packages/pm\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tiptap/react` from 2.27.2 to 3.23.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/releases\"\u003e@​tiptap/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.23.6\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extension-drag-handle\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003eDragHandle\u003c/strong\u003e: Added \u003ccode\u003edragImageProperties\u003c/code\u003e option to limit which CSS properties are cloned for the drag image. By default all ~300+ computed styles are copied; setting this to a subset (e.g. \u003ccode\u003e['color', 'background-color', 'font-size']\u003c/code\u003e) reduces the cost when dragging selections with complex nodes.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-collaboration\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-node-range\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: Fix deleteSelection to properly handle inline nodes with \u003ccode\u003etext*\u003c/code\u003e content. The selection is now expanded to include the entire inline node boundaries when deleting, preventing incorrect collapse of inline text nodes.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extensions\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003ePlaceholder\u003c/strong\u003e: Replaced full-document \u003ccode\u003edoc.descendants()\u003c/code\u003e traversal with a cursor-resolved fast path for the default config and viewport-limited scanning for the non-default config, significantly reducing decoration overhead on large documents.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.23.5\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/markdown\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix extra mark tokens after inline atom nodes during Markdown serialization\u003c/li\u003e\n\u003cli\u003e7bf0e73: Fix adjacent marks of the same type with different attributes being merged during Markdown serialization\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix $pos() returning correct node for non-text atom nodes instead of doc node\u003c/li\u003e\n\u003cli\u003e7bf0e73: fix(nodeview): eliminate unnecessary re-renders, add opt-in position tracking\nNodeViews no longer re-render when decorations or position change without\ncontent changes. Added \u003ccode\u003etrackNodeViewPosition\u003c/code\u003e option — when enabled, the\ncomponent re-renders on every position shift so calls to \u003ccode\u003egetPos()\u003c/code\u003e stay\ncurrent in render output. Removed the internal \u003ccode\u003enodeViewPositionRegistry\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/blob/main/packages/react/CHANGELOG.md\"\u003e@​tiptap/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.23.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [d168376]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.23.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eb5f34fc: Respect explicit \u003ccode\u003eimmediatelyRender: true\u003c/code\u003e in client-side Next.js. Previously, when running under Next.js (\u003ccode\u003ewindow.next\u003c/code\u003e present), the \u003ccode\u003eimmediatelyRender\u003c/code\u003e option was forced to \u003ccode\u003efalse\u003c/code\u003e even when the user explicitly passed \u003ccode\u003etrue\u003c/code\u003e, breaking client-only Next.js apps that rely on the editor existing on the first render. The hook now only forces \u003ccode\u003efalse\u003c/code\u003e when actual SSR is detected (\u003ccode\u003etypeof window === 'undefined'\u003c/code\u003e), or when running under Next.js with no explicit value.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e95e138c: fix(nodeview): eliminate unnecessary re-renders, add opt-in position tracking\u003c/p\u003e\n\u003cp\u003eNodeViews no longer re-render when decorations or position change without\ncontent changes. Added \u003ccode\u003etrackNodeViewPosition\u003c/code\u003e option — when enabled, the\ncomponent re-renders on every position shift so calls to \u003ccode\u003egetPos()\u003c/code\u003e stay\ncurrent in render output. Removed the internal \u003ccode\u003enodeViewPositionRegistry\u003c/code\u003e.\nAdded shallow prop comparison in \u003ccode\u003eReactRenderer.updateProps()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [835caf5]\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [95e138c]\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.23.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.4\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.23.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.3\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.3\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.23.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e30e0b58: Default \u003ccode\u003eimmediatelyRender\u003c/code\u003e to \u003ccode\u003efalse\u003c/code\u003e in SSR environments instead of throwing an error\u003c/p\u003e\n\u003cp\u003ePreviously, omitting \u003ccode\u003eimmediatelyRender\u003c/code\u003e in an SSR environment (e.g. Next.js) would throw an error in development and silently return \u003ccode\u003enull\u003c/code\u003e in production. This was a common source of crashes, especially when AI-generated code set up the editor without explicitly passing \u003ccode\u003eimmediatelyRender: false\u003c/code\u003e. The hook now defaults \u003ccode\u003eimmediatelyRender\u003c/code\u003e to \u003ccode\u003etrue\u003c/code\u003e, but automatically sets it to \u003ccode\u003efalse\u003c/code\u003e when SSR is detected, logging a warning in development instead of throwing.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [f98eaaf]\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.2\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/ueberdosis/tiptap/commit/195b13f719efc1bd3d95a79ffeb2105ee3118295\"\u003e\u003ccode\u003e195b13f\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7854\"\u003e#7854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/d9daae031a4f72ae81af039a721df66f5c0c2696\"\u003e\u003ccode\u003ed9daae0\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7835\"\u003e#7835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/95e138c18807f2d31c7ef83b3762ae654c8c8243\"\u003e\u003ccode\u003e95e138c\u003c/code\u003e\u003c/a\u003e fix(nodeview): eliminate unnecessary re-renders, add opt-in position tracking...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/b5f34fcbdaf6ddcb1fccdecee04ca1db89858227\"\u003e\u003ccode\u003eb5f34fc\u003c/code\u003e\u003c/a\u003e fix(react): respect explicit immediatelyRender on client-side Next.js\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/9d9cc06a33e70c0af7576e6d1250a1c4c596ba43\"\u003e\u003ccode\u003e9d9cc06\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7822\"\u003e#7822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0f05ae73b4d242583f5ed4dedf16dd163756f23f\"\u003e\u003ccode\u003e0f05ae7\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7821\"\u003e#7821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/817c490e7970e75aa3951d9f96e8b52ec2fe2714\"\u003e\u003ccode\u003e817c490\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/30e0b58311fd7cf7e29dece5e700cbed999c692c\"\u003e\u003ccode\u003e30e0b58\u003c/code\u003e\u003c/a\u003e fix(react): default immediatelyRender to false in SSR environments (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7761\"\u003e#7761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/a48290e543a4ff60c434b511419640b536acdcfe\"\u003e\u003ccode\u003ea48290e\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7808\"\u003e#7808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0520d9d62ead17da6ec444d045a44c744b22db95\"\u003e\u003ccode\u003e0520d9d\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7784\"\u003e#7784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ueberdosis/tiptap/commits/v3.23.6/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tiptap/starter-kit` from 2.27.2 to 3.23.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/releases\"\u003e@​tiptap/starter-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.23.6\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extension-drag-handle\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003eDragHandle\u003c/strong\u003e: Added \u003ccode\u003edragImageProperties\u003c/code\u003e option to limit which CSS properties are cloned for the drag image. By default all ~300+ computed styles are copied; setting this to a subset (e.g. \u003ccode\u003e['color', 'background-color', 'font-size']\u003c/code\u003e) reduces the cost when dragging selections with complex nodes.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-collaboration\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-node-range\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: Fix deleteSelection to properly handle inline nodes with \u003ccode\u003etext*\u003c/code\u003e content. The selection is now expanded to include the entire inline node boundaries when deleting, preventing incorrect collapse of inline text nodes.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extensions\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003ePlaceholder\u003c/strong\u003e: Replaced full-document \u003ccode\u003edoc.descendants()\u003c/code\u003e traversal with a cursor-resolved fast path for the default config and viewport-limited scanning for the non-default config, significantly reducing decoration overhead on large documents.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.23.5\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/markdown\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix extra mark tokens after inline atom nodes during Markdown serialization\u003c/li\u003e\n\u003cli\u003e7bf0e73: Fix adjacent marks of the same type with different attributes being merged during Markdown serialization\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix $pos() returning correct node for non-text atom nodes instead of doc node\u003c/li\u003e\n\u003cli\u003e7bf0e73: fix(nodeview): eliminate unnecessary re-renders, add opt-in position tracking\nNodeViews no longer re-render when decorations or position change without\ncontent changes. Added \u003ccode\u003etrackNodeViewPosition\u003c/code\u003e option — when enabled, the\ncomponent re-renders on every position shift so calls to \u003ccode\u003egetPos()\u003c/code\u003e stay\ncurrent in render output. Removed the internal \u003ccode\u003enodeViewPositionRegistry\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/blob/main/packages/starter-kit/CHANGELOG.md\"\u003e@​tiptap/starter-kit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.23.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [d168376]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extensions\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-blockquote\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-bold\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-code\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-code-block\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-document\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-hard-break\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-heading\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-horizontal-rule\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-italic\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-link\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-list\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-paragraph\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-strike\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-text\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-underline\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-dropcursor\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-gapcursor\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-list-item\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-list-keymap\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-bullet-list\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-ordered-list\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.23.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [835caf5]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [95e138c]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-blockquote\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-bold\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-code\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-code-block\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-document\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-hard-break\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-heading\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-horizontal-rule\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-italic\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-link\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-list\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-paragraph\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\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/ueberdosis/tiptap/commit/195b13f719efc1bd3d95a79ffeb2105ee3118295\"\u003e\u003ccode\u003e195b13f\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7854\"\u003e#7854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/d9daae031a4f72ae81af039a721df66f5c0c2696\"\u003e\u003ccode\u003ed9daae0\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7835\"\u003e#7835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/9d9cc06a33e70c0af7576e6d1250a1c4c596ba43\"\u003e\u003ccode\u003e9d9cc06\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7822\"\u003e#7822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0f05ae73b4d242583f5ed4dedf16dd163756f23f\"\u003e\u003ccode\u003e0f05ae7\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7821\"\u003e#7821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/817c490e7970e75aa3951d9f96e8b52ec2fe2714\"\u003e\u003ccode\u003e817c490\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/a48290e543a4ff60c434b511419640b536acdcfe\"\u003e\u003ccode\u003ea48290e\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7808\"\u003e#7808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0520d9d62ead17da6ec444d045a44c744b22db95\"\u003e\u003ccode\u003e0520d9d\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7784\"\u003e#7784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/898a8ed9b21ffbe9ade9a53be9b213acf511ffd3\"\u003e\u003ccode\u003e898a8ed\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7756\"\u003e#7756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/dec97359f25684d53e577abd72c503253713fedf\"\u003e\u003ccode\u003edec9735\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7727\"\u003e#7727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/626b052fa2098c8d5b20abb2e60fa6d7711d46af\"\u003e\u003ccode\u003e626b052\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7714\"\u003e#7714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ueberdosis/tiptap/commits/v3.23.6/packages/starter-kit\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lucide-react` from 0.562.0 to 1.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lucide-icons/lucide/releases\"\u003elucide-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.16.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003eblender\u003c/code\u003e icon by \u003ca href=\"https://github.com/rrod497\"\u003e\u003ccode\u003e@​rrod497\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3884\"\u003elucide-icons/lucide#3884\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.15.0...1.16.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.15.0...1.16.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.15.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove 'less' from brand stopwords by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4331\"\u003elucide-icons/lucide#4331\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(\u003ccode\u003e@​lucide/vue\u003c/code\u003e): Clone slots before passing to icon by \u003ca href=\"https://github.com/axtho\"\u003e\u003ccode\u003e@​axtho\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4339\"\u003elucide-icons/lucide#4339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003etext-cursor\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4340\"\u003elucide-icons/lucide#4340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003elandmark\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4334\"\u003elucide-icons/lucide#4334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump nitropack from 2.13.1 to 2.13.4 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4352\"\u003elucide-icons/lucide#4352\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump simple-git from 3.33.0 to 3.36.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/lucide-icons/lucide/pull/4349\"\u003elucide-icons/lucide#4349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003ecandy-cane\u003c/code\u003e icon by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4148\"\u003elucide-icons/lucide#4148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003evolleyball\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4338\"\u003elucide-icons/lucide#4338\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003echart-no-axes-combined\u003c/code\u003e icon by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3567\"\u003elucide-icons/lucide#3567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icon): added broccoli icon by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4263\"\u003elucide-icons/lucide#4263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(site): Updates to site and updated carbon ads by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4359\"\u003elucide-icons/lucide#4359\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added sticky note variants by \u003ca href=\"https://github.com/Barakudum\"\u003e\u003ccode\u003e@​Barakudum\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4348\"\u003elucide-icons/lucide#4348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump astro from 6.1.6 to 6.1.10 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4361\"\u003elucide-icons/lucide#4361\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/axtho\"\u003e\u003ccode\u003e@​axtho\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4339\"\u003elucide-icons/lucide#4339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Barakudum\"\u003e\u003ccode\u003e@​Barakudum\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4348\"\u003elucide-icons/lucide#4348\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.14.0...1.15.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.14.0...1.15.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.14.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003erepeat-off\u003c/code\u003e icon by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3102\"\u003elucide-icons/lucide#3102\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.13.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(docs): sync URL params with UI state on categories page by \u003ca href=\"https://github.com/taimar\"\u003e\u003ccode\u003e@​taimar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4111\"\u003elucide-icons/lucide#4111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): add \u003ccode\u003ewaves-vertical\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3867\"\u003elucide-icons/lucide#3867\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.12.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icon): add folder-bookmark icon by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4262\"\u003elucide-icons/lucide#4262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(readme): Update readme files by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4320\"\u003elucide-icons/lucide#4320\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003eastroid\u003c/code\u003e icon by \u003ca href=\"https://github.com/whoisBugsbunny\"\u003e\u003ccode\u003e@​whoisBugsbunny\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4217\"\u003elucide-icons/lucide#4217\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/lucide-icons/lucide/commit/07c885e6c1f9952965ba388b7fd2bb7c4d416a67\"\u003e\u003ccode\u003e07c885e\u003c/code\u003e\u003c/a\u003e fix(docs): fix zephyr-cloud URL in readmes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/50d8af5a1012e188f3d71ac8f1fc0fba1aab5357\"\u003e\u003ccode\u003e50d8af5\u003c/code\u003e\u003c/a\u003e docs(readme): Update readme files (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4320\"\u003e#4320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/653e44b83293567ff24dcb90ca1094a9cf0a042a\"\u003e\u003ccode\u003e653e44b\u003c/code\u003e\u003c/a\u003e feat(packages): use .mjs for ESM bundles (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4285\"\u003e#4285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/7623e23f787fe78e5075a613fd22da2cecbb9b1b\"\u003e\u003ccode\u003e7623e23\u003c/code\u003e\u003c/a\u003e feat(docs): add Zephyr Cloud to Hero Backers tier \u0026amp; rework updateSponsors scr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/dada0a82970d3733d1d716e2089591c538272a39\"\u003e\u003ccode\u003edada0a8\u003c/code\u003e\u003c/a\u003e fix(lucide-react): Fix dynamic imports (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4210\"\u003e#4210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/a6e648a66ff470c2255d3666765fd73cfcc185ff\"\u003e\u003ccode\u003ea6e648a\u003c/code\u003e\u003c/a\u003e fix(lucide-react): correct client directives in RSC files (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4189\"\u003e#4189\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/1f010a357a21c7a8c5e1f92dd90f09d76a04e2dd\"\u003e\u003ccode\u003e1f010a3\u003c/code\u003e\u003c/a\u003e fix(lucide-react): Fixes provider export and RSC render issues (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4175\"\u003e#4175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/484f2c9cd377dbeb536f63d4b183ecfd26947014\"\u003e\u003ccode\u003e484f2c9\u003c/code\u003e\u003c/a\u003e docs(version-1): Version 1 website (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4142\"\u003e#4142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/a0e202d759da95c243b541f8d3c1c26eada32b2e\"\u003e\u003ccode\u003ea0e202d\u003c/code\u003e\u003c/a\u003e feat(packages/angular): add new \u003ccode\u003e@​lucide/angular\u003c/code\u003e package (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/3897\"\u003e#3897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/c5b155ec37f0217bfd85e309873029379df473ac\"\u003e\u003ccode\u003ec5b155e\u003c/code\u003e\u003c/a\u003e Merge branch 'main' of \u003ca href=\"https://github.com/lucide-icons/lucide\"\u003ehttps://github.com/lucide-icons/lucide\u003c/a\u003e into next\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lucide-icons/lucide/commits/1.16.0/packages/lucide-react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.4 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@types/node` from 24.12.4 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 `eslint` from 9.39.4 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/es...\n\n_Description has been truncated_","html_url":"https://github.com/pamu512/tarka/pull/198","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/pamu512%2Ftarka/issues/198","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/198/packages"},{"uuid":"4497477865","node_id":"PR_kwDORkwgk87eFW69","number":348,"state":"closed","title":"chore(deps): bump @tailwindcss/oxide-linux-x64-gnu from 4.1.18 to 4.2.1","user":"dependabot[bot]","labels":["dependencies","javascript","bot","size/XS","cla: needed"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":"2026-05-28T23:49:24.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-21T19:51:02.000Z","updated_at":"2026-05-28T23:49:33.000Z","time_to_close":619102,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.1.18","new_version":"4.2.1","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) from 4.1.18 to 4.2.1.\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/oxide-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow trailing dash in functional utility names for backwards compatibility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19696\"\u003e#19696\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eProperly detect classes containing \u003ccode\u003e.\u003c/code\u003e characters within curly braces in MDX files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19711\"\u003e#19711\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd mauve, olive, mist, and taupe color palettes to the default theme (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19627\"\u003e#19627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e package to run Tailwind CSS as a webpack plugin (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19610\"\u003e#19610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epbs-*\u003c/code\u003e and \u003ccode\u003epbe-*\u003c/code\u003e utilities for \u003ccode\u003epadding-block-start\u003c/code\u003e and \u003ccode\u003epadding-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003embs-*\u003c/code\u003e and \u003ccode\u003embe-*\u003c/code\u003e utilities for \u003ccode\u003emargin-block-start\u003c/code\u003e and \u003ccode\u003emargin-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escroll-pbs-*\u003c/code\u003e and \u003ccode\u003escroll-pbe-*\u003c/code\u003e utilities for \u003ccode\u003escroll-padding-block-start\u003c/code\u003e and \u003ccode\u003escroll-padding-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escroll-mbs-*\u003c/code\u003e and \u003ccode\u003escroll-mbe-*\u003c/code\u003e utilities for \u003ccode\u003escroll-margin-block-start\u003c/code\u003e and \u003ccode\u003escroll-margin-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eborder-bs-*\u003c/code\u003e and \u003ccode\u003eborder-be-*\u003c/code\u003e utilities for \u003ccode\u003eborder-block-start\u003c/code\u003e and \u003ccode\u003eborder-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003einline-*\u003c/code\u003e, \u003ccode\u003emin-inline-*\u003c/code\u003e, \u003ccode\u003emax-inline-*\u003c/code\u003e utilities for \u003ccode\u003einline-size\u003c/code\u003e, \u003ccode\u003emin-inline-size\u003c/code\u003e, and \u003ccode\u003emax-inline-size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19612\"\u003e#19612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eblock-*\u003c/code\u003e, \u003ccode\u003emin-block-*\u003c/code\u003e, \u003ccode\u003emax-block-*\u003c/code\u003e utilities for \u003ccode\u003eblock-size\u003c/code\u003e, \u003ccode\u003emin-block-size\u003c/code\u003e, and \u003ccode\u003emax-block-size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19612\"\u003e#19612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003einset-s-*\u003c/code\u003e, \u003ccode\u003einset-e-*\u003c/code\u003e, \u003ccode\u003einset-bs-*\u003c/code\u003e, \u003ccode\u003einset-be-*\u003c/code\u003e utilities for \u003ccode\u003einset-inline-start\u003c/code\u003e, \u003ccode\u003einset-inline-end\u003c/code\u003e, \u003ccode\u003einset-block-start\u003c/code\u003e, and \u003ccode\u003einset-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19613\"\u003e#19613\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003efont-features-*\u003c/code\u003e utility for \u003ccode\u003efont-feature-settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19623\"\u003e#19623\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent double \u003ccode\u003e@supports\u003c/code\u003e wrapper for \u003ccode\u003ecolor-mix\u003c/code\u003e values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19450\"\u003e#19450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow whitespace around \u003ccode\u003e@source inline()\u003c/code\u003e argument (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19461\"\u003e#19461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmit comment when source maps are saved to files when using \u003ccode\u003e@tailwindcss/cli\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19447\"\u003e#19447\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDetect utilities containing capital letters followed by numbers (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19465\"\u003e#19465\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix class extraction for Rails' strict locals (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19525\"\u003e#19525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlign \u003ccode\u003e@utility\u003c/code\u003e name validation with Oxide scanner rules (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19524\"\u003e#19524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix infinite loop when using \u003ccode\u003e@variant\u003c/code\u003e inside \u003ccode\u003e@custom-variant\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19633\"\u003e#19633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiples of \u003ccode\u003e.25\u003c/code\u003e in \u003ccode\u003easpect-*\u003c/code\u003e fractions (e.g. \u003ccode\u003easpect-8.5/11\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19688\"\u003e#19688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure changes to external files listed via \u003ccode\u003e@source\u003c/code\u003e trigger a full page reload when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19670\"\u003e#19670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance of Oxide scanner in bigger projects by reducing file system walks (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19632\"\u003e#19632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure import aliases in Astro v5 work without crashing when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/issues/19677\"\u003e#19677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow escape characters in \u003ccode\u003e@utility\u003c/code\u003e names to improve support with formatters such as Biome (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19626\"\u003e#19626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect canonicalization results when canonicalizing multiple times (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19675\"\u003e#19675\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.jj\u003c/code\u003e to default ignored content directories (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19687\"\u003e#19687\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003estart-*\u003c/code\u003e and \u003ccode\u003eend-*\u003c/code\u003e utilities in favor of \u003ccode\u003einset-s-*\u003c/code\u003e and \u003ccode\u003einset-e-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19613\"\u003e#19613\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.2.1] - 2026-02-23\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow trailing dash in functional utility names for backwards compatibility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19696\"\u003e#19696\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eProperly detect classes containing \u003ccode\u003e.\u003c/code\u003e characters within curly braces in MDX files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19711\"\u003e#19711\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.0] - 2026-02-18\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd mauve, olive, mist, and taupe color palettes to the default theme (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19627\"\u003e#19627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e package to run Tailwind CSS as a webpack plugin (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19610\"\u003e#19610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epbs-*\u003c/code\u003e and \u003ccode\u003epbe-*\u003c/code\u003e utilities for \u003ccode\u003epadding-block-start\u003c/code\u003e and \u003ccode\u003epadding-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003embs-*\u003c/code\u003e and \u003ccode\u003embe-*\u003c/code\u003e utilities for \u003ccode\u003emargin-block-start\u003c/code\u003e and \u003ccode\u003emargin-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escroll-pbs-*\u003c/code\u003e and \u003ccode\u003escroll-pbe-*\u003c/code\u003e utilities for \u003ccode\u003escroll-padding-block-start\u003c/code\u003e and \u003ccode\u003escroll-padding-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escroll-mbs-*\u003c/code\u003e and \u003ccode\u003escroll-mbe-*\u003c/code\u003e utilities for \u003ccode\u003escroll-margin-block-start\u003c/code\u003e and \u003ccode\u003escroll-margin-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eborder-bs-*\u003c/code\u003e and \u003ccode\u003eborder-be-*\u003c/code\u003e utilities for \u003ccode\u003eborder-block-start\u003c/code\u003e and \u003ccode\u003eborder-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003einline-*\u003c/code\u003e, \u003ccode\u003emin-inline-*\u003c/code\u003e, \u003ccode\u003emax-inline-*\u003c/code\u003e utilities for \u003ccode\u003einline-size\u003c/code\u003e, \u003ccode\u003emin-inline-size\u003c/code\u003e, and \u003ccode\u003emax-inline-size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19612\"\u003e#19612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eblock-*\u003c/code\u003e, \u003ccode\u003emin-block-*\u003c/code\u003e, \u003ccode\u003emax-block-*\u003c/code\u003e utilities for \u003ccode\u003eblock-size\u003c/code\u003e, \u003ccode\u003emin-block-size\u003c/code\u003e, and \u003ccode\u003emax-block-size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19612\"\u003e#19612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003einset-s-*\u003c/code\u003e, \u003ccode\u003einset-e-*\u003c/code\u003e, \u003ccode\u003einset-bs-*\u003c/code\u003e, \u003ccode\u003einset-be-*\u003c/code\u003e utilities for \u003ccode\u003einset-inline-start\u003c/code\u003e, \u003ccode\u003einset-inline-end\u003c/code\u003e, \u003ccode\u003einset-block-start\u003c/code\u003e, and \u003ccode\u003einset-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19613\"\u003e#19613\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003efont-features-*\u003c/code\u003e utility for \u003ccode\u003efont-feature-settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19623\"\u003e#19623\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent double \u003ccode\u003e@supports\u003c/code\u003e wrapper for \u003ccode\u003ecolor-mix\u003c/code\u003e values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19450\"\u003e#19450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow whitespace around \u003ccode\u003e@source inline()\u003c/code\u003e argument (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19461\"\u003e#19461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmit comment when source maps are saved to files when using \u003ccode\u003e@tailwindcss/cli\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19447\"\u003e#19447\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDetect utilities containing capital letters followed by numbers (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19465\"\u003e#19465\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix class extraction for Rails' strict locals (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19525\"\u003e#19525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlign \u003ccode\u003e@utility\u003c/code\u003e name validation with Oxide scanner rules (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19524\"\u003e#19524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix infinite loop when using \u003ccode\u003e@variant\u003c/code\u003e inside \u003ccode\u003e@custom-variant\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19633\"\u003e#19633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiples of \u003ccode\u003e.25\u003c/code\u003e in \u003ccode\u003easpect-*\u003c/code\u003e fractions (e.g. \u003ccode\u003easpect-8.5/11\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19688\"\u003e#19688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure changes to external files listed via \u003ccode\u003e@source\u003c/code\u003e trigger a full page reload when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19670\"\u003e#19670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance of Oxide scanner in bigger projects by reducing file system walks (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19632\"\u003e#19632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure import aliases in Astro v5 work without crashing when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/issues/19677\"\u003e#19677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow escape characters in \u003ccode\u003e@utility\u003c/code\u003e names to improve support with formatters such as Biome (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19626\"\u003e#19626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect canonicalization results when canonicalizing multiple times (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19675\"\u003e#19675\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.jj\u003c/code\u003e to default ignored content directories (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19687\"\u003e#19687\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003estart-*\u003c/code\u003e and \u003ccode\u003eend-*\u003c/code\u003e utilities in favor of \u003ccode\u003einset-s-*\u003c/code\u003e and \u003ccode\u003einset-e-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19613\"\u003e#19613\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/tailwindlabs/tailwindcss/commit/1dce64ee7ec2e414c845b4e268ac3b9b89aaf0c8\"\u003e\u003ccode\u003e1dce64e\u003c/code\u003e\u003c/a\u003e 4.2.1 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu/issues/19714\"\u003e#19714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/1b16411919457ee47d38910fd07e134e9765eb4c\"\u003e\u003ccode\u003e1b16411\u003c/code\u003e\u003c/a\u003e 4.2.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu/issues/19695\"\u003e#19695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/c6f0c6b31845ed743030fc53a13b4ddc5657a468\"\u003e\u003ccode\u003ec6f0c6b\u003c/code\u003e\u003c/a\u003e bump required engine to Node 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.1/crates/node/npm/linux-x64-gnu\"\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.1.18\u0026new-version=4.2.1)](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/ahliweb/sikesra/pull/348","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahliweb%2Fsikesra/issues/348","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/348/packages"},{"uuid":"4481867856","node_id":"PR_kwDOQ8rQV87dS4_z","number":59,"state":"open","title":"chore(deps): bump @tailwindcss/oxide-linux-x64-gnu from 4.2.4 to 4.3.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-19T23:35:40.000Z","updated_at":"2026-05-19T23:35:40.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) from 4.2.4 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/oxide-linux-x64-gnu'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu'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\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/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/crates/node/npm/linux-x64-gnu/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/crates/node/npm/linux-x64-gnu\"\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.2.4\u0026new-version=4.3.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/doloop-bit/simkopkbm/pull/59","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/doloop-bit%2Fsimkopkbm/issues/59","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/59/packages"},{"uuid":"4474356366","node_id":"PR_kwDOScqyrs7c6eXv","number":12,"state":"closed","title":"build(deps): bump the minor-and-patch group with 14 updates","user":"dependabot[bot]","labels":["web","sdk","dependencies"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2026-05-26T00:44:03.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-19T04:20:26.000Z","updated_at":"2026-05-26T00:44:05.000Z","time_to_close":591817,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"minor-and-patch","update_count":14,"packages":[{"name":"@typescript-eslint/eslint-plugin","old_version":"8.59.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.59.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-eslint","old_version":"8.59.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"next","old_version":"16.2.4","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"react","old_version":"19.2.5","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-dom","old_version":"19.2.5","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tailwindcss/postcss","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@vitest/ui","old_version":"4.1.5","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"eslint-config-next","old_version":"16.2.4","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"tailwindcss","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"vitest","old_version":"4.1.5","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@vitest/coverage-v8","old_version":"4.1.5","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"}],"path":null,"ecosystem":"npm"},"body":"Bumps the minor-and-patch group with 14 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.59.4` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.59.1` | `8.59.4` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.59.1` | `8.59.4` |\n| [next](https://github.com/vercel/next.js) | `16.2.4` | `16.2.6` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.5` | `19.2.6` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.5` | `19.2.6` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.4` | `4.3.0` |\n| [@vitest/ui](https://github.com/vitest-dev/vitest/tree/HEAD/packages/ui) | `4.1.5` | `4.1.6` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.2.4` | `16.2.6` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.4` | `4.3.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.5` | `4.1.6` |\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| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.1.5` | `4.1.6` |\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.59.1 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\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/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.59.1 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\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/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.59.4/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript-eslint` from 8.59.1 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003etypescript-eslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md\"\u003etypescript-eslint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.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 typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.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/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4b927c607755b2648d5854b9e928c1dbb2b8e088\"\u003e\u003ccode\u003e4b927c6\u003c/code\u003e\u003c/a\u003e fix(typescript-eslint): export Compatible* types from typescript-eslint to re...\u003c/li\u003e\n\u003cli\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/typescript-eslint/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.59.4/packages/typescript-eslint\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `next` from 16.2.4 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\"\u003enext'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://redirect.github.com/vercel/next.js/issues/92231\"\u003e#92231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix fallback route params case in app-page handler (\u003ca href=\"https://redirect.github.com/vercel/next.js/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://redirect.github.com/vercel/next.js/issues/91541\"\u003e#91541\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePatch setHeader for direct route handlers (\u003ca href=\"https://redirect.github.com/vercel/next.js/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://redirect.github.com/vercel/next.js/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://redirect.github.com/vercel/next.js/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/afa053d9eb9c2a68c7eba43e84fe6bed8babcd45\"\u003e\u003ccode\u003eafa053d\u003c/code\u003e\u003c/a\u003e Turbopack: Match proxy matchers with webpack implementation (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/93594\"\u003e#93594\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/97a154e5bbee0cb1ac3fb8aa4db66ac36e796e3d\"\u003e\u003ccode\u003e97a154e\u003c/code\u003e\u003c/a\u003e Turbopack: Fix middleware matcher suffix (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/93590\"\u003e#93590\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/83899bc89103d4df1479e065c7c1e09d4698a7b6\"\u003e\u003ccode\u003e83899bc\u003c/code\u003e\u003c/a\u003e [backport] Disable build caches for production/staging/force-preview deploys ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/7b222b90954d607fc28a34e9b360a9b1636bc206\"\u003e\u003ccode\u003e7b222b9\u003c/code\u003e\u003c/a\u003e [backport][test] Pin package manager to patch versions (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/93595\"\u003e#93595\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/a8dc24f1fe23d4a22d24fac734837f7c824138f7\"\u003e\u003ccode\u003ea8dc24f\u003c/code\u003e\u003c/a\u003e [backport] Turbopack: more strict vergen setup (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/93587\"\u003e#93587\u003c/a\u003e)\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/0dd94836a8b43209fcfefa448c141683c22c1a27\"\u003e\u003ccode\u003e0dd9483\u003c/code\u003e\u003c/a\u003e fix: add explicit checks for RSC header (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/83\"\u003e#83\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/d166096c399c4fc4e09cd2d1bf26dca6579a855d\"\u003e\u003ccode\u003ed166096\u003c/code\u003e\u003c/a\u003e fix proxy matching for segment prefetch URLs (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/89\"\u003e#89\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/9d50c0b7190f59c470308578e12882788819f14c\"\u003e\u003ccode\u003e9d50c0b\u003c/code\u003e\u003c/a\u003e Strip next-resume header from incoming requests (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/92\"\u003e#92\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/next.js/compare/v16.2.4...v16.2.6\"\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 next since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `react` from 19.2.5 to 19.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003ereact's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.2.6 (May 6th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eType hardening and performance improvements\n(\u003ca href=\"https://redirect.github.com/facebook/react/pull/36425\"\u003e#36425\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\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/facebook/react/commit/eaf3e95ca92be7a23d3c9cc8ffd6f199a40be401\"\u003e\u003ccode\u003eeaf3e95\u003c/code\u003e\u003c/a\u003e Version 19.2.6\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/facebook/react/commits/v19.2.6/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `react-dom` from 19.2.5 to 19.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003ereact-dom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.2.6 (May 6th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eType hardening and performance improvements\n(\u003ca href=\"https://redirect.github.com/facebook/react/pull/36425\"\u003e#36425\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\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/facebook/react/commit/eaf3e95ca92be7a23d3c9cc8ffd6f199a40be401\"\u003e\u003ccode\u003eeaf3e95\u003c/code\u003e\u003c/a\u003e Version 19.2.6\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/facebook/react/commits/v19.2.6/packages/react-dom\"\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 `@tailwindcss/postcss` from 4.2.4 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\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/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\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/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\u003eSee full diff 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\u003cbr /\u003e\n\nUpdates `@vitest/ui` from 4.1.5 to 4.1.6\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/ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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/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.6/packages/ui\"\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.2.4 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\u003eSee full diff 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 `tailwindcss` from 4.2.4 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\"\u003etailwindcss'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss'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\u003escrollba...\n\n_Description has been truncated_","html_url":"https://github.com/Elite-tch/AgentCard/pull/12","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Elite-tch%2FAgentCard/issues/12","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12/packages"},{"uuid":"4465701960","node_id":"PR_kwDORxNE987celhU","number":7,"state":"open","title":"chore(deps): bump the production-dependencies group across 1 directory with 20 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-18T01:46:31.000Z","updated_at":"2026-05-24T02:17:20.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":20,"packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-musl","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"nanoid","old_version":"5.1.7","new_version":"5.1.11","repository_url":"https://github.com/ai/nanoid"},{"name":"jose","old_version":"6.2.1","new_version":"6.2.3","repository_url":"https://github.com/panva/jose"},{"name":"better-auth","old_version":"1.6.0","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.39.3","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@hono/node-server","old_version":"1.19.11","new_version":"2.0.3","repository_url":"https://github.com/honojs/node-server"},{"name":"zod","old_version":"3.25.76","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@neondatabase/serverless","old_version":"0.10.4","new_version":"1.1.0","repository_url":"https://github.com/neondatabase/serverless"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"ioredis","old_version":"5.10.0","new_version":"5.10.1","repository_url":"https://github.com/luin/ioredis"},{"name":"@modelcontextprotocol/sdk","old_version":"1.27.1","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"hono","old_version":"4.12.8","new_version":"4.12.22","repository_url":"https://github.com/honojs/hono"},{"name":"@base-ui/react","old_version":"1.3.0","new_version":"1.5.0","repository_url":"https://github.com/mui/base-ui"},{"name":"lucide-react","old_version":"0.577.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"next","old_version":"16.1.7","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"react","old_version":"19.2.3","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-dom","old_version":"19.2.3","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"shadcn","old_version":"4.0.8","new_version":"4.8.0","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"}],"path":null,"ecosystem":"npm"},"body":"Bumps the production-dependencies group with 20 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.1` | `4.3.0` |\n| [@tailwindcss/oxide-linux-x64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-musl) | `4.2.1` | `4.3.0` |\n| [nanoid](https://github.com/ai/nanoid) | `5.1.7` | `5.1.11` |\n| [jose](https://github.com/panva/jose) | `6.2.1` | `6.2.3` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.6.0` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.39.3` | `0.45.2` |\n| [@hono/node-server](https://github.com/honojs/node-server) | `1.19.11` | `2.0.3` |\n| [zod](https://github.com/colinhacks/zod) | `3.25.76` | `4.4.3` |\n| [@neondatabase/serverless](https://github.com/neondatabase/serverless) | `0.10.4` | `1.1.0` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [ioredis](https://github.com/luin/ioredis) | `5.10.0` | `5.10.1` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.27.1` | `1.29.0` |\n| [hono](https://github.com/honojs/hono) | `4.12.8` | `4.12.22` |\n| [@base-ui/react](https://github.com/mui/base-ui/tree/HEAD/packages/react) | `1.3.0` | `1.5.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.577.0` | `1.16.0` |\n| [next](https://github.com/vercel/next.js) | `16.1.7` | `16.2.6` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.3` | `19.2.6` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.3` | `19.2.6` |\n| [shadcn](https://github.com/shadcn-ui/ui/tree/HEAD/packages/shadcn) | `4.0.8` | `4.8.0` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` 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/oxide-linux-x64-gnu'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/oxide-linux-x64-gnu'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/crates/node/npm/linux-x64-gnu/issues/20023\"\u003e#20023\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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\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/crates/node/npm/linux-x64-gnu/issues/19821\"\u003e#19821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-linux-x64-musl` 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/oxide-linux-x64-musl'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/oxide-linux-x64-musl'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/crates/node/npm/linux-x64-musl/issues/20023\"\u003e#20023\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/crates/node/npm/linux-x64-musl/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-musl/issues/19944\"\u003e#19944\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/crates/node/npm/linux-x64-musl/issues/19821\"\u003e#19821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/crates/node/npm/linux-x64-musl\"\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/oxide-linux-x64-musl\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `nanoid` from 5.1.7 to 5.1.11\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ai/nanoid/releases\"\u003enanoid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.11\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breaking Nano ID by requesting big ID.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breaking nanoid by requesting big ID (by \u003ca href=\"https://github.com/alanzabihi\"\u003e\u003ccode\u003e@​alanzabihi\u003c/code\u003e\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed npm package size regression.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMade \u003ccode\u003ecusatomAlphabet\u003c/code\u003e 75% faster (by \u003ca href=\"https://github.com/saripovdenis\"\u003e\u003ccode\u003e@​saripovdenis\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/ai/nanoid/blob/main/CHANGELOG.md\"\u003enanoid's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.11\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breaking Nano ID by requesting big ID.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breaking Nano ID by requesting big ID (by \u003ca href=\"https://github.com/alanzabihi\"\u003e\u003ccode\u003e@​alanzabihi\u003c/code\u003e\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed npm package size regression.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMade \u003ccode\u003ecusatomAlphabet\u003c/code\u003e 75% faster (by \u003ca href=\"https://github.com/saripovdenis\"\u003e\u003ccode\u003e@​saripovdenis\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/ai/nanoid/commit/5423cf56499c1ea33ea4bd9fbaab1723083cb659\"\u003e\u003ccode\u003e5423cf5\u003c/code\u003e\u003c/a\u003e Release 5.1.11 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/21838943da8726c8ee3842c0dd2ed1c332c1b3b5\"\u003e\u003ccode\u003e2183894\u003c/code\u003e\u003c/a\u003e Backport 3.3.12 changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/7087969281cab8ba8ae3babf1894e819068b3bb4\"\u003e\u003ccode\u003e7087969\u003c/code\u003e\u003c/a\u003e Limit ID even more\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/013517bbe7daeffc3a0f6b288187984f64ac21b8\"\u003e\u003ccode\u003e013517b\u003c/code\u003e\u003c/a\u003e Temporary add pnpm-workspace.yaml to npm ignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/5db09ee173cb187e616337148da5bd892d396aa7\"\u003e\u003ccode\u003e5db09ee\u003c/code\u003e\u003c/a\u003e Release 5.1.10 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/be7901a66cc7f96af71b9854ba794207bb37f676\"\u003e\u003ccode\u003ebe7901a\u003c/code\u003e\u003c/a\u003e Fix random pool break\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/974f73b0647439f4484c00712fb5db44214aea45\"\u003e\u003ccode\u003e974f73b\u003c/code\u003e\u003c/a\u003e Structure tests with describe() instead of prefix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/fe3e7ec62b9d5b65b6d73fc5a3f3e3d8da5fa623\"\u003e\u003ccode\u003efe3e7ec\u003c/code\u003e\u003c/a\u003e Update dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/043a7c16dd815d5e1b4133b22d66cd742728b2cc\"\u003e\u003ccode\u003e043a7c1\u003c/code\u003e\u003c/a\u003e Move to pnpm 11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/e52d94613f0c5542c998a2f7d778295549432389\"\u003e\u003ccode\u003ee52d946\u003c/code\u003e\u003c/a\u003e Release 5.1.9 version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ai/nanoid/compare/5.1.7...5.1.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jose` from 6.2.1 to 6.2.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/panva/jose/releases\"\u003ejose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.3\u003c/h2\u003e\n\u003ch3\u003eRefactor\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecleanly reject invalid PBES2 p2c (\u003ca href=\"https://github.com/panva/jose/commit/0cdb851ca597635cac3da7a855342549fbe67a8d\"\u003e0cdb851\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.2.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ereject failed decompression with JWEInvalid error (\u003ca href=\"https://github.com/panva/jose/commit/043b181a96ee55d92b9ff1ee94e11be36e258ee4\"\u003e043b181\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/panva/jose/blob/main/CHANGELOG.md\"\u003ejose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/panva/jose/compare/v6.2.2...v6.2.3\"\u003e6.2.3\u003c/a\u003e (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003eRefactor\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecleanly reject invalid PBES2 p2c (\u003ca href=\"https://github.com/panva/jose/commit/0cdb851ca597635cac3da7a855342549fbe67a8d\"\u003e0cdb851\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/panva/jose/compare/v6.2.1...v6.2.2\"\u003e6.2.2\u003c/a\u003e (2026-03-18)\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ereject failed decompression with JWEInvalid error (\u003ca href=\"https://github.com/panva/jose/commit/043b181a96ee55d92b9ff1ee94e11be36e258ee4\"\u003e043b181\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/panva/jose/commit/41ad7e9a76d270ca7e24b7421a88e507f756f2db\"\u003e\u003ccode\u003e41ad7e9\u003c/code\u003e\u003c/a\u003e chore(release): 6.2.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/988e90f6661eaa45418bc187cf890e156293f9c7\"\u003e\u003ccode\u003e988e90f\u003c/code\u003e\u003c/a\u003e chore: account for commit-and-tag-version instead of standard-version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/4b24656b617e5d8a54b6a50180b65c8b3eb7e4eb\"\u003e\u003ccode\u003e4b24656\u003c/code\u003e\u003c/a\u003e chore: update CHANGELOG.md header\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/0cdb851ca597635cac3da7a855342549fbe67a8d\"\u003e\u003ccode\u003e0cdb851\u003c/code\u003e\u003c/a\u003e refactor: cleanly reject invalid PBES2 p2c\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/a0b261eddf7e92a0b641eb2be988120101ed62ac\"\u003e\u003ccode\u003ea0b261e\u003c/code\u003e\u003c/a\u003e test: update Bun expectations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/b39dc1af78e1559e6f5ca1be4d7423296e1bf8b6\"\u003e\u003ccode\u003eb39dc1a\u003c/code\u003e\u003c/a\u003e chore: use fs.globSync\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/0675be19a6d6f68cce6c10c76f635ead82e27a4c\"\u003e\u003ccode\u003e0675be1\u003c/code\u003e\u003c/a\u003e build: replace rollup umd build with a custom esbuild iife wrap\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/9b0332370a34600782e8d7106adb0a5506b72601\"\u003e\u003ccode\u003e9b03323\u003c/code\u003e\u003c/a\u003e chore: bump packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/914b73dad2360628845802e4818a52bd0fb72fbd\"\u003e\u003ccode\u003e914b73d\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump lodash\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/9dce817d74963ee5ef00001810a0e36e4c396ffd\"\u003e\u003ccode\u003e9dce817\u003c/code\u003e\u003c/a\u003e chore: bump packages\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/panva/jose/compare/v6.2.1...v6.2.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `better-auth` from 1.6.0 to 1.6.11\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/better-auth/better-auth/releases\"\u003ebetter-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.6.11\u003c/h2\u003e\n\u003ch2\u003e\u003ccode\u003ebetter-auth\u003c/code\u003e\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded an error code to the \u003ccode\u003echange-email-disabled\u003c/code\u003e response to help clients identify the rejection reason (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/8948\"\u003e#8948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed access-control role statement types so predefined organization roles expose only their configured permissions in TypeScript (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9507\"\u003e#9507\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed the anonymous plugin to correctly call \u003ccode\u003eonLinkAccount\u003c/code\u003e when email verification triggers auto sign-in (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9548\"\u003e#9548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed device authorization to bind pending codes to the verifying session, preventing any authenticated user from approving or denying another user's device code (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9573\"\u003e#9573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a race condition in the magic-link plugin that allowed concurrent requests to mint multiple sessions from the same single-use token (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9572\"\u003e#9572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed the \u003ccode\u003eoidc-provider\u003c/code\u003e and \u003ccode\u003emcp\u003c/code\u003e plugins to require \u003ccode\u003eclient_secret\u003c/code\u003e for confidential clients on refresh token grants and use constant-time secret comparison (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9576\"\u003e#9576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHardened \u003ccode\u003eoidc-provider\u003c/code\u003e and \u003ccode\u003emcp\u003c/code\u003e plugins to follow OAuth 2.1: removed \u003ccode\u003e\u0026quot;none\u0026quot;\u003c/code\u003e from advertised signing algorithms, defaulted plain PKCE off, and rejected incomplete PKCE parameters (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9575\"\u003e#9575\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed an invitation takeover vulnerability by enabling \u003ccode\u003erequireEmailVerificationOnInvitation\u003c/code\u003e by default and extending the verification gate to \u003ccode\u003egetInvitation\u003c/code\u003e and \u003ccode\u003elistUserInvitations\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9577\"\u003e#9577\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor detailed changes, see \u003ca href=\"https://github.com/better-auth/better-auth/blob/f41514ef07cfafc5dbf463bd1500aee6575d88a7/packages/better-auth/CHANGELOG.md\"\u003e\u003ccode\u003eCHANGELOG\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ccode\u003e@better-auth/oauth-provider\u003c/code\u003e\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a race condition in the OAuth authorization-code grant that allowed concurrent token-exchange requests to mint multiple token sets from the same authorization code\u003c/li\u003e\n\u003cli\u003eFixed a race condition in OAuth refresh-token rotation that allowed concurrent requests to fork refresh token families, and added a \u003ccode\u003eunique\u003c/code\u003e constraint on \u003ccode\u003eoauthRefreshToken.token\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed OAuth account linking to require a verified local email before linking an OAuth identity to a local account (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9578\"\u003e#9578\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor detailed changes, see \u003ca href=\"https://github.com/better-auth/better-auth/blob/f41514ef07cfafc5dbf463bd1500aee6575d88a7/packages/oauth-provider/CHANGELOG.md\"\u003e\u003ccode\u003eCHANGELOG\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ccode\u003e@better-auth/core\u003c/code\u003e\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed an invalid import list in the instrumentation module (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9582\"\u003e#9582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWidened \u003ccode\u003eadvanced.ipAddress.ipv6Subnet\u003c/code\u003e to accept any valid IPv6 prefix length (0-128) instead of a narrow set of values (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9545\"\u003e#9545\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor detailed changes, see \u003ca href=\"https://github.com/better-auth/better-auth/blob/f41514ef07cfafc5dbf463bd1500aee6575d88a7/packages/core/CHANGELOG.md\"\u003e\u003ccode\u003eCHANGELOG\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ccode\u003e@better-auth/scim\u003c/code\u003e\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed session cleanup to run when admin, anonymous, or SCIM operations delete a user (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9162\"\u003e#9162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003egenerateSCIMToken\u003c/code\u003e to reject \u003ccode\u003eproviderId\u003c/code\u003e values that collide with built-in account providers, preventing tokens from authenticating against unintended accounts (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9579\"\u003e#9579\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor detailed changes, see \u003ca href=\"https://github.com/better-auth/better-auth/blob/f41514ef07cfafc5dbf463bd1500aee6575d88a7/packages/scim/CHANGELOG.md\"\u003e\u003ccode\u003eCHANGELOG\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ccode\u003e@better-auth/sso\u003c/code\u003e\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed SSO provider registration to require an org admin or owner role, preventing any organization member from registering providers (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9220\"\u003e#9220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed an SSRF vulnerability by validating user-supplied OIDC endpoint URLs against a public-routable host allowlist at provider registration and update (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9574\"\u003e#9574\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/better-auth/better-auth/blob/main/packages/better-auth/CHANGELOG.md\"\u003ebetter-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.6.11\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/better-auth/better-auth/pull/9568\"\u003e#9568\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/0cbddb8fa4eb19fbca75e9822134f89b3604286a\"\u003e\u003ccode\u003e0cbddb8\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - Add \u003ccode\u003einternalAdapter.consumeVerificationValue(identifier)\u003c/code\u003e: atomically consume a verification row keyed by identifier. The first concurrent caller receives the row; later racers receive \u003ccode\u003enull\u003c/code\u003e. Backed by a new \u003ccode\u003eDBAdapter.consumeOne\u003c/code\u003e primitive implemented natively per adapter (memory, mongo, drizzle, kysely, prisma), with a \u003ccode\u003etransaction(findMany + delete)\u003c/code\u003e factory fallback. \u003ccode\u003eSecondaryStorage.getAndDelete\u003c/code\u003e is added as an optional companion; Redis ships it via an atomic Lua get-and-delete operation for compatibility with Redis versions before 6.2.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9162\"\u003e#9162\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/a26333b5fb1a044e76c18385441d3ecc2240ab70\"\u003e\u003ccode\u003ea26333b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ping-maxwell\"\u003e\u003ccode\u003e@​ping-maxwell\u003c/code\u003e\u003c/a\u003e! - fix: cleanup sessions when admin, anonymous, or SCIM deletes a user\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9573\"\u003e#9573\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/99a254a79b59d5a3f5ca2123260118cddb5beed7\"\u003e\u003ccode\u003e99a254a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - fix(device-authorization): require verify-time ownership claim for approve/deny\u003c/p\u003e\n\u003cp\u003ePending device codes were not bound to the user who entered the code on the verification page until approval, leaving a window where any authenticated user could approve or deny another user's pending code by knowing the \u003ccode\u003euser_code\u003c/code\u003e. \u003ccode\u003eGET /device\u003c/code\u003e now claims the pending row for the calling session, and \u003ccode\u003ePOST /device/approve\u003c/code\u003e and \u003ccode\u003ePOST /device/deny\u003c/code\u003e require the calling session to match the claimed owner. Custom verification pages must be served to an authenticated session for the flow to succeed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/8948\"\u003e#8948\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/ee934854999390ee5ca73592fe205a470a810b83\"\u003e\u003ccode\u003eee93485\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ping-maxwell\"\u003e\u003ccode\u003e@​ping-maxwell\u003c/code\u003e\u003c/a\u003e! - fix: add error code to change-email-disabled\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9572\"\u003e#9572\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/5f09d566a64ac9a0499d9664ce700edbf0630cea\"\u003e\u003ccode\u003e5f09d56\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - Fix race condition in the \u003ccode\u003emagic-link\u003c/code\u003e plugin's verify handler that allowed two concurrent requests to mint two sessions from the same single-use token. The handler now consumes the verification row atomically via \u003ccode\u003einternalAdapter.consumeVerificationValue\u003c/code\u003e, so a given magic link mints at most one session regardless of concurrency. The \u003ccode\u003eallowedAttempts\u003c/code\u003e option is retained for backward compatibility but no longer multiplies successful redemptions; tokens are single-use. The second-redeem error code changes from \u003ccode\u003eATTEMPTS_EXCEEDED\u003c/code\u003e to \u003ccode\u003eINVALID_TOKEN\u003c/code\u003e (the token no longer exists after consumption).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/b4bc65a007784b2eb0efb459e5fa6fd8055d3ec9\"\u003e\u003ccode\u003eb4bc65a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - Fix race condition in the OAuth authorization-code grant: two concurrent token-exchange requests sharing the same \u003ccode\u003ecode\u003c/code\u003e could both pass the find step before either delete completed and each mint an independent access/refresh/id token set. The \u003ccode\u003eauthorization_code\u003c/code\u003e handler in \u003ccode\u003e@better-auth/oauth-provider\u003c/code\u003e, plus the legacy \u003ccode\u003eoidc-provider\u003c/code\u003e and \u003ccode\u003emcp\u003c/code\u003e plugins in \u003ccode\u003ebetter-auth\u003c/code\u003e, now consume the verification row atomically via \u003ccode\u003einternalAdapter.consumeVerificationValue\u003c/code\u003e. The first caller mints tokens; concurrent racers receive \u003ccode\u003einvalid_grant\u003c/code\u003e (RFC 6749 §5.2). Malformed-verification-value branches in \u003ccode\u003e@better-auth/oauth-provider\u003c/code\u003e previously returned a project-specific \u003ccode\u003einvalid_verification\u003c/code\u003e code; those are now \u003ccode\u003einvalid_grant\u003c/code\u003e so spec-compliant clients can branch on the standard code.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9578\"\u003e#9578\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/da7e50beee849c59a2ed1ec6b3a38cc6ab9fb563\"\u003e\u003ccode\u003eda7e50b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - \u003ccode\u003ehandleOAuthUserInfo\u003c/code\u003e (used by every social provider, generic-oauth, oauth-proxy, SSO OIDC and SAML, and idToken sign-in) implicitly linked a returning OAuth identity into a local user row whenever the IdP's \u003ccode\u003eemail_verified\u003c/code\u003e claim was true or the provider was trusted. The local row's own \u003ccode\u003eemailVerified\u003c/code\u003e flag was read only to flip it after linking, never as a precondition. \u003ccode\u003ePOST /sign-up/email\u003c/code\u003e creates rows with \u003ccode\u003eemailVerified: false\u003c/code\u003e for any caller, so an attacker who pre-registered a victim's email at the application could wait for the legitimate user's first OAuth sign-in: the IdP's verified claim was treated as ownership proof, and the victim's IdP identity was linked into the attacker-owned row.\u003c/p\u003e\n\u003cp\u003eThe implicit-link gate now requires \u003ccode\u003edbUser.user.emailVerified === true\u003c/code\u003e in addition to the provider trust check by default. A new \u003ccode\u003eaccount.accountLinking.requireLocalEmailVerified\u003c/code\u003e option (default \u003ccode\u003etrue\u003c/code\u003e) is the public surface for this gate. Apps whose users sign up via OAuth without verifying their email locally can opt back into the legacy behavior with \u003ccode\u003eaccount: { accountLinking: { requireLocalEmailVerified: false } }\u003c/code\u003e; understand the takeover risk before doing so. The option is \u003ccode\u003e@deprecated\u003c/code\u003e; a FIXME at each gate site points at the next-minor follow-up on \u003ccode\u003enext\u003c/code\u003e that drops the option and makes the gate unconditional.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eone-tap\u003c/code\u003e plugin honored its own copy of the gate and was updated identically: \u003ccode\u003erequireLocalEmailVerified\u003c/code\u003e and \u003ccode\u003eaccountLinking.disableImplicitLinking\u003c/code\u003e both apply on \u003ccode\u003e/one-tap/callback\u003c/code\u003e. The \u003ccode\u003eemail_verified\u003c/code\u003e claim from the Google ID token is now normalized via \u003ccode\u003etoBoolean\u003c/code\u003e so a string \u003ccode\u003e\u0026quot;false\u0026quot;\u003c/code\u003e is treated as falsy.\u003c/p\u003e\n\u003cp\u003eTest fixtures across \u003ccode\u003eadmin\u003c/code\u003e, \u003ccode\u003eoidc-provider\u003c/code\u003e, \u003ccode\u003emcp\u003c/code\u003e, \u003ccode\u003egeneric-oauth\u003c/code\u003e, \u003ccode\u003elast-login-method\u003c/code\u003e, and \u003ccode\u003eoauth-provider\u003c/code\u003e suites now mark users \u003ccode\u003eemailVerified: true\u003c/code\u003e via a \u003ccode\u003edatabaseHooks.user.create.before\u003c/code\u003e hook (or the \u003ccode\u003edisableTestUser\u003c/code\u003e opt-in on the oauth-provider RP) so the suites continue to exercise their role/flow logic rather than the new gate.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9507\"\u003e#9507\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/a1c9f3c08e7398e900e099839aa6dcc8d1d0b816\"\u003e\u003ccode\u003ea1c9f3c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/GautamBytes\"\u003e\u003ccode\u003e@​GautamBytes\u003c/code\u003e\u003c/a\u003e! - Preserve exact access-control role statement types so predefined organization roles expose only their configured permissions in TypeScript.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9577\"\u003e#9577\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/23094a628f007f801be6d26e5b15dc5fc6fc4eb8\"\u003e\u003ccode\u003e23094a6\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - The organization plugin's invitation recipient endpoints (\u003ccode\u003eacceptInvitation\u003c/code\u003e, \u003ccode\u003erejectInvitation\u003c/code\u003e, \u003ccode\u003egetInvitation\u003c/code\u003e, \u003ccode\u003elistUserInvitations\u003c/code\u003e) treated \u003ccode\u003einvitation.email.toLowerCase() === session.user.email.toLowerCase()\u003c/code\u003e as proof that the calling user owned the invited address. A session-authenticated user whose email matched but was never verified passed the gate, so anyone who could pre-register an unverified account at a victim's email could accept invitations addressed to that email. The \u003ccode\u003erequireEmailVerificationOnInvitation\u003c/code\u003e opt-in option closed the gap only when explicitly enabled and did not protect \u003ccode\u003egetInvitation\u003c/code\u003e or \u003ccode\u003elistUserInvitations\u003c/code\u003e at all.\u003c/p\u003e\n\u003cp\u003eThe gate is now applied on all four recipient endpoints and the \u003ccode\u003erequireEmailVerificationOnInvitation\u003c/code\u003e option default flips from \u003ccode\u003efalse\u003c/code\u003e to \u003ccode\u003etrue\u003c/code\u003e so existing apps are secure by default. Apps that intentionally accept invitations from unverified accounts can keep the legacy permissive behavior with \u003ccode\u003eorganization({ requireEmailVerificationOnInvitation: false })\u003c/code\u003e, but they should understand the takeover risk before doing so. Server-side calls to \u003ccode\u003elistUserInvitations\u003c/code\u003e with \u003ccode\u003ectx.query.email\u003c/code\u003e and no session continue to bypass the gate (the caller is trusted).\u003c/p\u003e\n\u003cp\u003eThe option is \u003ccode\u003e@deprecated\u003c/code\u003e. The next-minor release on \u003ccode\u003enext\u003c/code\u003e removes it entirely and makes the gate unconditional.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9548\"\u003e#9548\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/142b86c43d2e6b258236a298a31237e97f87d64d\"\u003e\u003ccode\u003e142b86c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dipan-ck\"\u003e\u003ccode\u003e@​dipan-ck\u003c/code\u003e\u003c/a\u003e! - anonymous plugin now correctly calls onLinkAccount when email verification triggers auto sign-in\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9576\"\u003e#9576\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/1f2ff4215c4affff0b140b0c0a712c0dde35659c\"\u003e\u003ccode\u003e1f2ff42\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - fix(oidc-provider, mcp): authenticate confidential clients on refresh_token grant and harden secret comparison\u003c/p\u003e\n\u003cp\u003eRefresh-token grants on the legacy \u003ccode\u003eoidc-provider\u003c/code\u003e and \u003ccode\u003emcp\u003c/code\u003e plugins now require the registered \u003ccode\u003eclient_secret\u003c/code\u003e from confidential clients, matching the \u003ccode\u003eauthorization_code\u003c/code\u003e path. Public clients (where \u003ccode\u003ecode_verifier\u003c/code\u003e substitutes for the secret on the auth-code grant) continue to skip secret validation. Secret comparisons across both plugins now use constant-time equality. The \u003ccode\u003e/mcp/token\u003c/code\u003e endpoint no longer emits a wildcard CORS \u003ccode\u003eAccess-Control-Allow-Origin: *\u003c/code\u003e header.\u003c/p\u003e\n\u003cp\u003eThese plugins are deprecated in favor of \u003ccode\u003e@better-auth/oauth-provider\u003c/code\u003e, which is unaffected. New deployments should adopt the replacement; this patch keeps existing deployments protected while migrating.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9575\"\u003e#9575\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/699b09a2064dcb7d37046b5a90626c0b6f57af90\"\u003e\u003ccode\u003e699b09a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - fix(oidc-provider, mcp): drop \u003ccode\u003e\u0026quot;none\u0026quot;\u003c/code\u003e from advertised signing algorithms, default \u003ccode\u003eallowPlainCodeChallengeMethod\u003c/code\u003e to \u003ccode\u003efalse\u003c/code\u003e, and reject missing PKCE method\u003c/p\u003e\n\u003cp\u003eThe legacy \u003ccode\u003eoidc-provider\u003c/code\u003e and \u003ccode\u003emcp\u003c/code\u003e plugins now follow OAuth 2.1 (RFC 9700) on three protocol gates:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eid_token_signing_alg_values_supported\u003c/code\u003e (oidc-provider, mcp) and \u003ccode\u003eresource_signing_alg_values_supported\u003c/code\u003e (mcp) no longer include \u003ccode\u003e\u0026quot;none\u0026quot;\u003c/code\u003e. Relying parties that negotiate from this list will no longer be steered toward unsigned tokens.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eallowPlainCodeChallengeMethod\u003c/code\u003e defaults to \u003ccode\u003efalse\u003c/code\u003e. Callers who need \u003ccode\u003eplain\u003c/code\u003e PKCE must opt in explicitly.\u003c/li\u003e\n\u003cli\u003eUnder the secure default the authorize endpoint no longer silently rewrites a missing \u003ccode\u003ecode_challenge_method\u003c/code\u003e to \u003ccode\u003e\u0026quot;plain\u0026quot;\u003c/code\u003e before the allowlist check. A request that provides \u003ccode\u003ecode_challenge\u003c/code\u003e without \u003ccode\u003ecode_challenge_method\u003c/code\u003e is now rejected with \u003ccode\u003einvalid_request\u003c/code\u003e; the inverse case (\u003ccode\u003ecode_challenge_method\u003c/code\u003e without \u003ccode\u003ecode_challenge\u003c/code\u003e) is also rejected so no inconsistent PKCE state is persisted on the authorization code record.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNon-breaking for callers who never relied on \u003ccode\u003e\u0026quot;none\u0026quot;\u003c/code\u003e advertisement or the plain default. Callers who explicitly set \u003ccode\u003eallowPlainCodeChallengeMethod: true\u003c/code\u003e keep \u003ccode\u003eplain\u003c/code\u003e on the allowlist \u003cstrong\u003eand\u003c/strong\u003e retain the legacy \u0026quot;missing method defaults to plain\u0026quot; behavior for backward compatibility, so existing integrations that opted into plain PKCE continue to work. The next-minor on \u003ccode\u003enext\u003c/code\u003e will drop both the \u003ccode\u003eplain\u003c/code\u003e allowlist entry and this fallback; until then, the option is the single explicit knob for legacy behavior. Migrate to \u003ccode\u003e@better-auth/oauth-provider\u003c/code\u003e for the canonical, spec-aligned implementation.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/f41514ef07cfafc5dbf463bd1500aee6575d88a7\"\u003e\u003ccode\u003ef41514e\u003c/code\u003e\u003c/a\u003e chore: release v1.6.11 (\u003ca href=\"https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth/issues/9532\"\u003e#9532\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/699b09a2064dcb7d37046b5a90626c0b6f57af90\"\u003e\u003ccode\u003e699b09a\u003c/code\u003e\u003c/a\u003e fix(oidc-provider, mcp): drop \u0026quot;none\u0026quot; alg, default plain PKCE off, reject miss...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/b4bc65a007784b2eb0efb459e5fa6fd8055d3ec9\"\u003e\u003ccode\u003eb4bc65a\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/a1c9f3c08e7398e900e099839aa6dcc8d1d0b816\"\u003e\u003ccode\u003ea1c9f3c\u003c/code\u003e\u003c/a\u003e fix(access): preserve exact role statement types (\u003ca href=\"https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth/issues/9507\"\u003e#9507\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/da7e50beee849c59a2ed1ec6b3a38cc6ab9fb563\"\u003e\u003ccode\u003eda7e50b\u003c/code\u003e\u003c/a\u003e fix(oauth): block OAuth linking to unverified local accounts (\u003ca href=\"https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth/issues/9578\"\u003e#9578\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/23094a628f007f801be6d26e5b15dc5fc6fc4eb8\"\u003e\u003ccode\u003e23094a6\u003c/code\u003e\u003c/a\u003e fix(organization): default-on \u003ccode\u003erequireEmailVerificationOnInvitation\u003c/code\u003e \u0026amp; extend...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/1f2ff4215c4affff0b140b0c0a712c0dde35659c\"\u003e\u003ccode\u003e1f2ff42\u003c/code\u003e\u003c/a\u003e fix(oidc-provider, mcp): authenticate confidential clients on refresh_token g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/5f09d566a64ac9a0499d9664ce700edbf0630cea\"\u003e\u003ccode\u003e5f09d56\u003c/code\u003e\u003c/a\u003e fix(magic-link): consume verification token atomically on verify (\u003ca href=\"https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth/issues/9572\"\u003e#9572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/99a254a79b59d5a3f5ca2123260118cddb5beed7\"\u003e\u003ccode\u003e99a254a\u003c/code\u003e\u003c/a\u003e fix(device-authorization): bind approval to verifier session (\u003ca href=\"https://github.com/better-auth/better-auth/tree/HEAD/packages/bett...\n\n_Description has been truncated_","html_url":"https://github.com/Cam-Smith-One/Headless_CRM/pull/7","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cam-Smith-One%2FHeadless_CRM/issues/7","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7/packages"},{"uuid":"4425331932","node_id":"PR_kwDOE0E9D87aemEz","number":2402,"state":"open","title":"Bump @tailwindcss/oxide-linux-x64-gnu from 4.2.4 to 4.3.0","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":["lpeyr"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-12T00:49:03.000Z","updated_at":"2026-05-12T00:49:35.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) from 4.2.4 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/oxide-linux-x64-gnu'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu'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\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/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/crates/node/npm/linux-x64-gnu/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/crates/node/npm/linux-x64-gnu\"\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.2.4\u0026new-version=4.3.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/Leo-Corporation/Passliss/pull/2402","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Leo-Corporation%2FPassliss/issues/2402","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2402/packages"},{"uuid":"4425141744","node_id":"PR_kwDORTNt3M7ad-9H","number":64,"state":"open","title":"chore(deps): bump the minor-and-patch group across 1 directory with 21 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-11T23:57:00.000Z","updated_at":"2026-05-11T23:59:22.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":21,"packages":[{"name":"@anthropic-ai/sdk","old_version":"0.82.0","new_version":"0.95.2","repository_url":"https://github.com/anthropics/anthropic-sdk-typescript"},{"name":"@aws-sdk/client-s3","old_version":"3.1023.0","new_version":"3.1045.0","repository_url":"https://github.com/aws/aws-sdk-js-v3"},{"name":"@upstash/redis","old_version":"1.37.0","new_version":"1.38.0","repository_url":"https://github.com/upstash/redis-js"},{"name":"lucide-react","old_version":"1.7.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"openai","old_version":"6.33.0","new_version":"6.37.0","repository_url":"https://github.com/openai/openai-node"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.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":"@next/bundle-analyzer","old_version":"16.2.2","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tailwindcss/postcss","old_version":"4.2.2","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@types/node","old_version":"25.5.0","new_version":"25.7.0","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-config-next","old_version":"16.2.2","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"swagger-ui-react","old_version":"5.32.1","new_version":"5.32.5","repository_url":"https://github.com/swagger-api/swagger-ui"},{"name":"@rollup/rollup-linux-x64-gnu","old_version":"4.60.1","new_version":"4.60.3","repository_url":"https://github.com/rollup/rollup"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the minor-and-patch group with 18 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@anthropic-ai/sdk](https://github.com/anthropics/anthropic-sdk-typescript) | `0.82.0` | `0.95.2` |\n| [@aws-sdk/client-s3](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-s3) | `3.1023.0` | `3.1045.0` |\n| [@upstash/redis](https://github.com/upstash/redis-js) | `1.37.0` | `1.38.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.7.0` | `1.14.0` |\n| [openai](https://github.com/openai/openai-node) | `6.33.0` | `6.37.0` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@next/bundle-analyzer](https://github.com/vercel/next.js/tree/HEAD/packages/next-bundle-analyzer) | `16.2.2` | `16.2.6` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.2` | `4.3.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.5.0` | `25.7.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.27` | `10.5.0` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.2.2` | `16.2.6` |\n| [swagger-ui-react](https://github.com/swagger-api/swagger-ui) | `5.32.1` | `5.32.5` |\n| [@rollup/rollup-linux-x64-gnu](https://github.com/rollup/rollup) | `4.60.1` | `4.60.3` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.2` | `4.3.0` |\n\n\nUpdates `@anthropic-ai/sdk` from 0.82.0 to 0.95.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/releases\"\u003e@​anthropic-ai/sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esdk: v0.95.2\u003c/h2\u003e\n\u003ch2\u003e0.95.2 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.95.1...sdk-v0.95.2\"\u003esdk-v0.95.1...sdk-v0.95.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003esdk: v0.95.1\u003c/h2\u003e\n\u003ch2\u003e0.95.1 (2026-05-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.95.0...sdk-v0.95.1\"\u003esdk-v0.95.0...sdk-v0.95.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eredact api-key headers in debug logs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/fad8feeb51d1b9bafaf85cf8345bb28627728e00\"\u003efad8fee\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esdk: v0.95.0\u003c/h2\u003e\n\u003ch2\u003e0.95.0 (2026-05-06)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.94.0...sdk-v0.95.0\"\u003esdk-v0.94.0...sdk-v0.95.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Managed Agents multiagents and outcomes, webhooks, vault validation (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/e0c0e9bef90b1919a5b806eb252e028981841e68\"\u003ee0c0e9b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Adjust webhook configuration (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/deed3f6290c0728dfc688e19117e1c01efb81a52\"\u003edeed3f6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esdk: v0.94.0\u003c/h2\u003e\n\u003ch2\u003e0.94.0 (2026-05-05)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.93.0...sdk-v0.94.0\"\u003esdk-v0.93.0...sdk-v0.94.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e allow targeting a workspace for OIDC federation token exchange (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/bde6620d68c2dd9e8e641b4cfed8847486ff046f\"\u003ebde6620\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esdk: v0.93.0\u003c/h2\u003e\n\u003ch2\u003e0.93.0 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.92.0...sdk-v0.93.0\"\u003esdk-v0.92.0...sdk-v0.93.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e add Workload Identity Federation, interactive OAuth, and auth profiles (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/d5d6abdb1976db389aca87553ffedab2414e0d77\"\u003ed5d6abd\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esdk: v0.92.0\u003c/h2\u003e\n\u003ch2\u003e0.92.0 (2026-04-30)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.91.1...sdk-v0.92.0\"\u003esdk-v0.91.1...sdk-v0.92.0\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/blob/main/CHANGELOG.md\"\u003e@​anthropic-ai/sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.95.2 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.95.1...sdk-v0.95.2\"\u003esdk-v0.95.1...sdk-v0.95.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.95.1 (2026-05-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.95.0...sdk-v0.95.1\"\u003esdk-v0.95.0...sdk-v0.95.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eredact api-key headers in debug logs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/fad8feeb51d1b9bafaf85cf8345bb28627728e00\"\u003efad8fee\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.95.0 (2026-05-06)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.94.0...sdk-v0.95.0\"\u003esdk-v0.94.0...sdk-v0.95.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Managed Agents multiagents and outcomes, webhooks, vault validation (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/e0c0e9bef90b1919a5b806eb252e028981841e68\"\u003ee0c0e9b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Adjust webhook configuration (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/deed3f6290c0728dfc688e19117e1c01efb81a52\"\u003edeed3f6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.94.0 (2026-05-05)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.93.0...sdk-v0.94.0\"\u003esdk-v0.93.0...sdk-v0.94.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e allow targeting a workspace for OIDC federation token exchange (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/bde6620d68c2dd9e8e641b4cfed8847486ff046f\"\u003ebde6620\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.93.0 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.92.0...sdk-v0.93.0\"\u003esdk-v0.92.0...sdk-v0.93.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e add Workload Identity Federation, interactive OAuth, and auth profiles (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/d5d6abdb1976db389aca87553ffedab2414e0d77\"\u003ed5d6abd\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.92.0 (2026-04-30)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.91.1...sdk-v0.92.0\"\u003esdk-v0.91.1...sdk-v0.92.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e improve Managed Agents APIs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/ca1bf4a9b278fddc7f082b1c4f2b3a3e4e20298d\"\u003eca1bf4a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport setting headers via env (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/32f67d47952b12bb930c8bbfe87ab2ba2aee1882\"\u003e32f67d4\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/anthropics/anthropic-sdk-typescript/commit/e3bcdd4b5dbc73ff2093e4f91dd230fc6b3957ca\"\u003e\u003ccode\u003ee3bcdd4\u003c/code\u003e\u003c/a\u003e chore: release main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/08943f187d43aa2d28b0fb31ee9312f33447396d\"\u003e\u003ccode\u003e08943f1\u003c/code\u003e\u003c/a\u003e feat(aws): Add AWS client for Claude Platform on AWS\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/7834cebf3cebe6501896df21ebffcc93ffa0f901\"\u003e\u003ccode\u003e7834ceb\u003c/code\u003e\u003c/a\u003e ci(release-please): exclude subpackages from root changelog (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/991\"\u003e#991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/e6f4239f20544f26b1f8b5afa38f519512e30bfd\"\u003e\u003ccode\u003ee6f4239\u003c/code\u003e\u003c/a\u003e chore: release main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/6f0690508eb8be5af21601ff0b7c51fba1c803a2\"\u003e\u003ccode\u003e6f06905\u003c/code\u003e\u003c/a\u003e chore: redact api-key headers in debug logs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/7693ec96ce0d9c59171ad05bd1b917f45da45f75\"\u003e\u003ccode\u003e7693ec9\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1030\"\u003e#1030\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/9ddb1adbea8f748394dd4b8dd0c7e9a38d5cff9b\"\u003e\u003ccode\u003e9ddb1ad\u003c/code\u003e\u003c/a\u003e chore: release main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/6d738201c6c599279e757f0a5da05e1f4ee7133d\"\u003e\u003ccode\u003e6d73820\u003c/code\u003e\u003c/a\u003e feat(client): allow targeting a workspace for OIDC federation token exchange\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/d6f562c45a7fb4946ce7d75bd042d00ba57ede9f\"\u003e\u003ccode\u003ed6f562c\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1025\"\u003e#1025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/d3aff2821ae2e261f67a10779c8a47c3ce24f0e8\"\u003e\u003ccode\u003ed3aff28\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1017\"\u003e#1017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.82.0...sdk-v0.95.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@aws-sdk/client-s3` from 3.1023.0 to 3.1045.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-s3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1045.0\u003c/h2\u003e\n\u003ch4\u003e3.1045.0(2026-05-07)\u003c/h4\u003e\n\u003ch5\u003eDocumentation Changes\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient-guardduty:\u003c/strong\u003e  This is a documentation update (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/1484574cd28136e104e4364499a02f0435d274af\"\u003e1484574c\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-07 (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/81310767bd884df988d524faf7d1f131f15c6197\"\u003e81310767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-bcm-data-exports:\u003c/strong\u003e  With this release, customers can configure their data exports to generate additional integration artifacts for Athena and Redshift. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/238da2c16c5885ef9051c2798c0bec4a5c10fa9f\"\u003e238da2c1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-invoicing:\u003c/strong\u003e  Updated ListInvoiceSummaries API to add new ReceiverRole filter in Request and Response (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/60a448cbfb17643b0b93c0bf72848b404dc31a83\"\u003e60a448cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-bedrock-agentcore:\u003c/strong\u003e  Launching AgentCore payments - a capability that provides secure, instant microtransaction payments for AI agents to access paid APIs, MCP servers, and content. It handles payment processing for x402 protocol, payment limits, and 3P wallet integrations with Coinbase CDP and Stripe (Privy). (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/1e1031a7c070e56c2c781df05af75baf543e65ca\"\u003e1e1031a7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-ec2:\u003c/strong\u003e  DescribeInstanceTypes now accepts an IncludeUnsupportedInRegion parameter. When set, the response also lists instance types that are not available in the current Region. Each instance type includes a SupportedInRegion field indicating its regional availability. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/7026243303994e24be2996bf169b6acd50d5b081\"\u003e70262433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-bedrock-agentcore-control:\u003c/strong\u003e  Launching AgentCore payments - a capability that provides secure, instant microtransaction payments for AI agents to access paid APIs, MCP servers, and content. It handles payment processing for x402 protocol, payment limits, and 3P wallet integrations with Coinbase CDP and Stripe (Privy). (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/fe5861ae18b0b71616398dcbb54936a919af1d8f\"\u003efe5861ae\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-route53resolver:\u003c/strong\u003e  Adds supports for DNS64 on inbound endpoints and IPv6 forwarding through the internet gateway (IGW) on outbound endpoints, making it easier to manage hybrid DNS across IPv4 and IPv6 networks. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/8e6e18c603f2392b7b61d5f2efdfc54dab0d8126\"\u003e8e6e18c6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eFor list of updated packages, view \u003cstrong\u003eupdated-packages.md\u003c/strong\u003e in \u003cstrong\u003eassets-3.1045.0.zip\u003c/strong\u003e\u003c/p\u003e\n\u003ch2\u003ev3.1044.0\u003c/h2\u003e\n\u003ch4\u003e3.1044.0(2026-05-06)\u003c/h4\u003e\n\u003ch5\u003eNew Features\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient-securityhub:\u003c/strong\u003e  Release GenerateRecommendedPolicyV2 and GetRecommendedPolicyV2 APIs. This supports generating and retrieving policy recommendations to remediate unused permissions findings that are now being supported on Security Hub. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/772b8629c270edee6fb4bb6874bb4036102d0f60\"\u003e772b8629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-sagemaker:\u003c/strong\u003e  Amazon SageMaker HyperPod now returns ImageVersionStatus in DescribeCluster, DescribeClusterNode, and ListClusterNodes responses, indicating whether cluster instances are running the latest available image version. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/2be7e6b4b07f9732823fbb6b9b6e0c78b640e44f\"\u003e2be7e6b4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-glue:\u003c/strong\u003e  Adds support for a CustomLogGroupPrefix parameter in StartDataQualityRulesetEvaluationRun to specify custom CloudWatch log group paths, and a RulesetName filter in ListDataQualityRulesetEvaluationRuns to filter evaluation runs by ruleset name. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/b95d850bd64dae6c73588e9035803b9924781a4d\"\u003eb95d850b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-lex-models-v2:\u003c/strong\u003e  Amazon Lex V2 introduces audio filler support for speech-to-speech bots. Configure melody or typing sounds that play during backend processing to reduce perceived latency and maintain a natural conversational experience for callers. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/01426f8e5c9073cdf81e7bd2a6d816156bd81249\"\u003e01426f8e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-bedrock-agentcore-control:\u003c/strong\u003e  Adds support for bring-your-own file system in AgentCore Runtime. Developers can mount Amazon S3 Files and Amazon EFS access points directly into agent sessions using filesystemConfigurations. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/e20f24d92f340e25371fa4b00e1321b627211b98\"\u003ee20f24d9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-s3:\u003c/strong\u003e  Validate outpost access point resource name (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/bee88a56c5d1e8ffe9b2953117d81f4fc221ac68\"\u003ebee88a56\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-mwaa:\u003c/strong\u003e  Amazon MWAA now supports a PublicAndPrivate webserver access mode. The Airflow web server is accessible over both public and private endpoints, enabling workers in VPCs without internet access to reach the Task API privately while retaining public access to the Airflow UI. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/3a6054ef54e1f8afbc167fa27761c1cd36dffa5e\"\u003e3a6054ef\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-imagebuilder:\u003c/strong\u003e  The ImportDiskImage API now enforces a maximum character limit of 128 characters on the image name field. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/7fc2565c6b8b25d3257729b962125cffe00e5c42\"\u003e7fc2565c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003eTests\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003escripts:\u003c/strong\u003e  include type symbols in api snapshot test (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-js-v3/pull/7985\"\u003e#7985\u003c/a\u003e) (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/02f86176e779ecd6f7e9802b92fc15080803973b\"\u003e02f86176\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eFor list of updated packages, view \u003cstrong\u003eupdated-packages.md\u003c/strong\u003e in \u003cstrong\u003eassets-3.1044.0.zip\u003c/strong\u003e\u003c/p\u003e\n\u003ch2\u003ev3.1043.0\u003c/h2\u003e\n\u003ch4\u003e3.1043.0(2026-05-05)\u003c/h4\u003e\n\u003ch5\u003eNew Features\u003c/h5\u003e\n\u003c!-- 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/aws/aws-sdk-js-v3/blob/main/clients/client-s3/CHANGELOG.md\"\u003e@​aws-sdk/client-s3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1044.0...v3.1045.0\"\u003e3.1045.0\u003c/a\u003e (2026-05-07)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​aws-sdk/client-s3\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1043.0...v3.1044.0\"\u003e3.1044.0\u003c/a\u003e (2026-05-06)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient-s3:\u003c/strong\u003e Validate outpost access point resource name (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/bee88a56c5d1e8ffe9b2953117d81f4fc221ac68\"\u003ebee88a5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1042.0...v3.1043.0\"\u003e3.1043.0\u003c/a\u003e (2026-05-05)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​aws-sdk/client-s3\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1041.0...v3.1042.0\"\u003e3.1042.0\u003c/a\u003e (2026-05-04)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​aws-sdk/client-s3\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1040.0...v3.1041.0\"\u003e3.1041.0\u003c/a\u003e (2026-05-01)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​aws-sdk/client-s3\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1039.0...v3.1040.0\"\u003e3.1040.0\u003c/a\u003e (2026-04-30)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​aws-sdk/client-s3\u003c/code\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/aws/aws-sdk-js-v3/commit/b329def5fdfa4fc2f311a66553d6b3782f78d4ce\"\u003e\u003ccode\u003eb329def\u003c/code\u003e\u003c/a\u003e Publish v3.1045.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/1ccd438a189e58745a6f25f5dec7ecd83120f7a8\"\u003e\u003ccode\u003e1ccd438\u003c/code\u003e\u003c/a\u003e Publish v3.1044.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/bee88a56c5d1e8ffe9b2953117d81f4fc221ac68\"\u003e\u003ccode\u003ebee88a5\u003c/code\u003e\u003c/a\u003e feat(client-s3): Validate outpost access point resource name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/96baad9d69cbc4157632d8e76753d19e5a13cd04\"\u003e\u003ccode\u003e96baad9\u003c/code\u003e\u003c/a\u003e Publish v3.1043.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/d942e31ae5787bc4f46e2fbe17b3e4116708097b\"\u003e\u003ccode\u003ed942e31\u003c/code\u003e\u003c/a\u003e Publish v3.1042.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/5df4c0175d3391ce5f5a8b9205f6466ac8a991dc\"\u003e\u003ccode\u003e5df4c01\u003c/code\u003e\u003c/a\u003e Publish v3.1041.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/7736067de09bf7aa1d3b9d776e93b97089e4941f\"\u003e\u003ccode\u003e7736067\u003c/code\u003e\u003c/a\u003e Publish v3.1040.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/51c8215fb4b32699b8304a03bbb9743c802acce9\"\u003e\u003ccode\u003e51c8215\u003c/code\u003e\u003c/a\u003e Publish v3.1039.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/3dfb72b7359b53da18c209e9211b38a1229357ac\"\u003e\u003ccode\u003e3dfb72b\u003c/code\u003e\u003c/a\u003e chore(codegen): sync for adaptive retry fixes (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-s3/issues/7970\"\u003e#7970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/3fbf6c563843fd198085b3db2198af02ac09fede\"\u003e\u003ccode\u003e3fbf6c5\u003c/code\u003e\u003c/a\u003e Publish v3.1038.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commits/v3.1045.0/clients/client-s3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@upstash/redis` from 1.37.0 to 1.38.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/upstash/redis-js/releases\"\u003e@​upstash/redis's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​upstash/redis\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.38.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ec71f581: Separate read/write commands into separate pipelines in auto pipeline. As a\nresult, mixed read/write \u003ccode\u003ePromise.all\u003c/code\u003e batches may now be split across multiple\npipeline HTTP requests instead of a single request, and read-after-write\nordering may no longer be preserved within those mixed batches.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e@upstash/\u003ca href=\"mailto:redis@1.38.0-canary-20260505130836-8b3b33ccd367ba9ddb5b7f5ca33eb32ccf7e940d\"\u003eredis@1.38.0-canary-20260505130836-8b3b33ccd367ba9ddb5b7f5ca33eb32ccf7e940d\u003c/a\u003e\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDX-2506: add redis search into skills by \u003ca href=\"https://github.com/CahidArda\"\u003e\u003ccode\u003e@​CahidArda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/upstash/redis-js/pull/1427\"\u003eupstash/redis-js#1427\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: rename redis search analytics demo by \u003ca href=\"https://github.com/CahidArda\"\u003e\u003ccode\u003e@​CahidArda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/upstash/redis-js/pull/1428\"\u003eupstash/redis-js#1428\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDX-2555: add supply chain security settings by \u003ca href=\"https://github.com/CahidArda\"\u003e\u003ccode\u003e@​CahidArda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/upstash/redis-js/pull/1429\"\u003eupstash/redis-js#1429\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: add version sync to ci by \u003ca href=\"https://github.com/alitariksahin\"\u003e\u003ccode\u003e@​alitariksahin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/upstash/redis-js/pull/1430\"\u003eupstash/redis-js#1430\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/upstash/redis-js/compare/@upstash/redis@1.37.0...@upstash/redis@1.38.0-canary-20260505130836-8b3b33ccd367ba9ddb5b7f5ca33eb32ccf7e940d\"\u003ehttps://github.com/upstash/redis-js/compare/@​upstash/redis@1.37.0...@​upstash/redis@1.38.0-canary-20260505130836-8b3b33ccd367ba9ddb5b7f5ca33eb32ccf7e940d\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/upstash/redis-js/commit/76075499bb10a1b124dbefc7b5468360da2bc1bf\"\u003e\u003ccode\u003e7607549\u003c/code\u003e\u003c/a\u003e chore: version packages (\u003ca href=\"https://redirect.github.com/upstash/redis-js/issues/1433\"\u003e#1433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/c71f5813f9d094c1aa5f425051eed49fc9b1e5fb\"\u003e\u003ccode\u003ec71f581\u003c/code\u003e\u003c/a\u003e DX-2577: Seperate read/write commands into seperate pipelines in auto pipelin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/e3a23ab7dfcc8c8fbee3fb8262fa4fad71559ad1\"\u003e\u003ccode\u003ee3a23ab\u003c/code\u003e\u003c/a\u003e fix: add version sync to ci (\u003ca href=\"https://redirect.github.com/upstash/redis-js/issues/1430\"\u003e#1430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/12e9a9ec278b89e6735170fea9c2edd0308d6e8b\"\u003e\u003ccode\u003e12e9a9e\u003c/code\u003e\u003c/a\u003e DX-2555: add supply chain security settings (\u003ca href=\"https://redirect.github.com/upstash/redis-js/issues/1429\"\u003e#1429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/f59fa759afd2148339c87213c21addd0ef9cdd57\"\u003e\u003ccode\u003ef59fa75\u003c/code\u003e\u003c/a\u003e fix: docs link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/c88b8e5b3dcad49dc6b2368837a427ce7c8944cb\"\u003e\u003ccode\u003ec88b8e5\u003c/code\u003e\u003c/a\u003e fix: rename redis search analytics demo (\u003ca href=\"https://redirect.github.com/upstash/redis-js/issues/1428\"\u003e#1428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/5d8abc14d13780dea4e609b42ea5b084b5db1a34\"\u003e\u003ccode\u003e5d8abc1\u003c/code\u003e\u003c/a\u003e feat: add redis search into skills (\u003ca href=\"https://redirect.github.com/upstash/redis-js/issues/1427\"\u003e#1427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/upstash/redis-js/compare/@upstash/redis@1.37.0...@upstash/redis@1.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lucide-react` from 1.7.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lucide-icons/lucide/releases\"\u003elucide-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.14.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003erepeat-off\u003c/code\u003e icon by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3102\"\u003elucide-icons/lucide#3102\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.13.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(docs): sync URL params with UI state on categories page by \u003ca href=\"https://github.com/taimar\"\u003e\u003ccode\u003e@​taimar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4111\"\u003elucide-icons/lucide#4111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): add \u003ccode\u003ewaves-vertical\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3867\"\u003elucide-icons/lucide#3867\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.12.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icon): add folder-bookmark icon by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4262\"\u003elucide-icons/lucide#4262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(readme): Update readme files by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4320\"\u003elucide-icons/lucide#4320\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003eastroid\u003c/code\u003e icon by \u003ca href=\"https://github.com/whoisBugsbunny\"\u003e\u003ccode\u003e@​whoisBugsbunny\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4217\"\u003elucide-icons/lucide#4217\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.10.0...1.12.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.10.0...1.12.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add missing period to TypeScript Support description by \u003ca href=\"https://github.com/jglu\"\u003e\u003ccode\u003e@​jglu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4309\"\u003elucide-icons/lucide#4309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(\u003ccode\u003e@​lucide/svelte\u003c/code\u003e): proper doc comments for svelte components by \u003ca href=\"https://github.com/blt-r\"\u003e\u003ccode\u003e@​blt-r\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4267\"\u003elucide-icons/lucide#4267\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump svgo from 3.3.2 to 3.3.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/lucide-icons/lucide/pull/4119\"\u003elucide-icons/lucide#4119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump astro from 6.0.8 to 6.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/lucide-icons/lucide/pull/4310\"\u003elucide-icons/lucide#4310\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): add power and quick tags to zap and zap-off by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4268\"\u003elucide-icons/lucide#4268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(build-font): added comprehensive unit tests on build-font tool by \u003ca href=\"https://github.com/karsa-mistmere\"\u003e\u003ccode\u003e@​karsa-mistmere\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4315\"\u003elucide-icons/lucide#4315\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(docs): blur background of framework-select by \u003ca href=\"https://github.com/Spleefies\"\u003e\u003ccode\u003e@​Spleefies\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4238\"\u003elucide-icons/lucide#4238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icon): add heart-x icon  by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4264\"\u003elucide-icons/lucide#4264\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): optimised \u003ccode\u003erotate-3d\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4299\"\u003elucide-icons/lucide#4299\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003elayers-minus\u003c/code\u003e icon by \u003ca href=\"https://github.com/Spleefies\"\u003e\u003ccode\u003e@​Spleefies\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4005\"\u003elucide-icons/lucide#4005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003ebell-check\u003c/code\u003e icon by \u003ca href=\"https://github.com/pettelau\"\u003e\u003ccode\u003e@​pettelau\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4152\"\u003elucide-icons/lucide#4152\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/jglu\"\u003e\u003ccode\u003e@​jglu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4309\"\u003elucide-icons/lucide#4309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pettelau\"\u003e\u003ccode\u003e@​pettelau\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4152\"\u003elucide-icons/lucide#4152\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.9.0...1.11.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.9.0...1.11.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.10.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add missing period to TypeScript Support description by \u003ca href=\"https://github.com/jglu\"\u003e\u003ccode\u003e@​jglu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4309\"\u003elucide-icons/lucide#4309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(\u003ccode\u003e@​lucide/svelte\u003c/code\u003e): proper doc comments for svelte components by \u003ca href=\"https://github.com/blt-r\"\u003e\u003ccode\u003e@​blt-r\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4267\"\u003elucide-icons/lucide#4267\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump svgo from 3.3.2 to 3.3.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/lucide-icons/lucide/pull/4119\"\u003elucide-icons/lucide#4119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump astro from 6.0.8 to 6.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/lucide-icons/lucide/pull/4310\"\u003elucide-icons/lucide#4310\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/lucide-icons/lucide/commit/50d8af5a1012e188f3d71ac8f1fc0fba1aab5357\"\u003e\u003ccode\u003e50d8af5\u003c/code\u003e\u003c/a\u003e docs(readme): Update readme files (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4320\"\u003e#4320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/653e44b83293567ff24dcb90ca1094a9cf0a042a\"\u003e\u003ccode\u003e653e44b\u003c/code\u003e\u003c/a\u003e feat(packages): use .mjs for ESM bundles (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4285\"\u003e#4285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/7623e23f787fe78e5075a613fd22da2cecbb9b1b\"\u003e\u003ccode\u003e7623e23\u003c/code\u003e\u003c/a\u003e feat(docs): add Zephyr Cloud to Hero Backers tier \u0026amp; rework updateSponsors scr...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/lucide-icons/lucide/commits/1.14.0/packages/lucide-react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openai` from 6.33.0 to 6.37.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/openai/openai-node/releases\"\u003eopenai's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.37.0\u003c/h2\u003e\n\u003ch2\u003e6.37.0 (2026-05-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/openai/openai-node/compare/v6.36.0...v6.37.0\"\u003ev6.36.0...v6.37.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add quantity field to admin organization usage responses (\u003ca href=\"https://github.com/openai/openai-node/commit/273a8f73e65839fb4d2ebc2a54ccc38383bd7517\"\u003e273a8f7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add web_search_call.results output option to responses (\u003ca href=\"https://github.com/openai/openai-node/commit/91c75e064f12946d3774cb182e5cd795000019ce\"\u003e91c75e0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e launch realtime translate + update image 2 (\u003ca href=\"https://github.com/openai/openai-node/commit/a296b661f0598ed001309d7deb693caa1596875c\"\u003ea296b66\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/794b90513f5ca63bd95c6cf774722fa6aeae293d\"\u003e794b905\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/69637293939580a9d20bd9274d86f23a012ffd87\"\u003e6963729\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e realtime 2 (\u003ca href=\"https://github.com/openai/openai-node/commit/f4b717702182adfc684270c0e7d5ff11d6c7a408\"\u003ef4b7177\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix imagegen \u003ccode\u003esize\u003c/code\u003e enum regression (\u003ca href=\"https://github.com/openai/openai-node/commit/4fe8469a7c1f892d586df375a449f6bd0e318b15\"\u003e4fe8469\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eredact api-key headers in debug logs (\u003ca href=\"https://github.com/openai/openai-node/commit/99c9c800e179c13659b96386dedd6c17dd6ffb8d\"\u003e99c9c80\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.36.0\u003c/h2\u003e\n\u003ch2\u003e6.36.0 (2026-05-01)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/openai/openai-node/compare/v6.35.0...v6.36.0\"\u003ev6.35.0...v6.36.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add group_type/user metadata fields, update types across admin resources (\u003ca href=\"https://github.com/openai/openai-node/commit/cc52f9755e3ce3b29ea2266482521c8d83ab88ad\"\u003ecc52f97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Admin API Keys per endpoint (\u003ca href=\"https://github.com/openai/openai-node/commit/770d187be1d6c0419002a9b01e7dec6a99761f94\"\u003e770d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e admin API updates (\u003ca href=\"https://github.com/openai/openai-node/commit/ee2bd2d8e66a5b90f80e6ca8ab4544385d9a5de3\"\u003eee2bd2d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/6af2b6dfd86e4d7e7a2cb5afb1275217fcd5d242\"\u003e6af2b6d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/f2dceda58fce6e44e740b56b9337597275d25e5b\"\u003ef2dceda\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e support admin api key auth (\u003ca href=\"https://github.com/openai/openai-node/commit/e3862a3d415ba3cedb178718e2c9bc0c2d09e01e\"\u003ee3862a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e tighten auth header selection (\u003ca href=\"https://github.com/openai/openai-node/commit/f1203bd884fb4131c54d9d7b8f89e9db3f4fc57c\"\u003ef1203bd\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eformat:\u003c/strong\u003e run eslint and prettier separately (\u003ca href=\"https://github.com/openai/openai-node/commit/104543a4daa138698006b1785ef7845d5ae0be27\"\u003e104543a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e codegen related update (\u003ca href=\"https://github.com/openai/openai-node/commit/05d86dac705c75f8b8c6e6d5630973451f798e75\"\u003e05d86da\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e codegen related update (\u003ca href=\"https://github.com/openai/openai-node/commit/f184586fbcb8c7c07bf439455d6317aba62719ec\"\u003ef184586\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/openai/openai-node/blob/master/CHANGELOG.md\"\u003eopenai's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.37.0 (2026-05-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/openai/openai-node/compare/v6.36.0...v6.37.0\"\u003ev6.36.0...v6.37.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add quantity field to admin organization usage responses (\u003ca href=\"https://github.com/openai/openai-node/commit/273a8f73e65839fb4d2ebc2a54ccc38383bd7517\"\u003e273a8f7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add web_search_call.results output option to responses (\u003ca href=\"https://github.com/openai/openai-node/commit/91c75e064f12946d3774cb182e5cd795000019ce\"\u003e91c75e0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e launch realtime translate + update image 2 (\u003ca href=\"https://github.com/openai/openai-node/commit/a296b661f0598ed001309d7deb693caa1596875c\"\u003ea296b66\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/794b90513f5ca63bd95c6cf774722fa6aeae293d\"\u003e794b905\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/69637293939580a9d20bd9274d86f23a012ffd87\"\u003e6963729\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e realtime 2 (\u003ca href=\"https://github.com/openai/openai-node/commit/f4b717702182adfc684270c0e7d5ff11d6c7a408\"\u003ef4b7177\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix imagegen \u003ccode\u003esize\u003c/code\u003e enum regression (\u003ca href=\"https://github.com/openai/openai-node/commit/4fe8469a7c1f892d586df375a449f6bd0e318b15\"\u003e4fe8469\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eredact api-key headers in debug logs (\u003ca href=\"https://github.com/openai/openai-node/commit/99c9c800e179c13659b96386dedd6c17dd6ffb8d\"\u003e99c9c80\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.36.0 (2026-05-01)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/openai/openai-node/compare/v6.35.0...v6.36.0\"\u003ev6.35.0...v6.36.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add group_type/user metadata fields, update types across admin resources (\u003ca href=\"https://github.com/openai/openai-node/commit/cc52f9755e3ce3b29ea2266482521c8d83ab88ad\"\u003ecc52f97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Admin API Keys per endpoint (\u003ca href=\"https://github.com/openai/openai-node/commit/770d187be1d6c0419002a9b01e7dec6a99761f94\"\u003e770d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e admin API updates (\u003ca href=\"https://github.com/openai/openai-node/commit/ee2bd2d8e66a5b90f80e6ca8ab4544385d9a5de3\"\u003eee2bd2d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/6af2b6dfd86e4d7e7a2cb5afb1275217fcd5d242\"\u003e6af2b6d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/f2dceda58fce6e44e740b56b9337597275d25e5b\"\u003ef2dceda\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e support admin api key auth (\u003ca href=\"https://github.com/openai/openai-node/commit/e3862a3d415ba3cedb178718e2c9bc0c2d09e01e\"\u003ee3862a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e tighten auth header selection (\u003ca href=\"https://github.com/openai/openai-node/commit/f1203bd884fb4131c54d9d7b8f89e9db3f4fc57c\"\u003ef1203bd\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eformat:\u003c/strong\u003e run eslint and prettier separately (\u003ca href=\"https://github.com/openai/openai-node/commit/104543a4daa138698006b1785ef7845d5ae0be27\"\u003e104543a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e codegen related update (\u003ca href=\"https://github.com/openai/openai-node/commit/05d86dac705c75f8b8c6e6d5630973451f798e75\"\u003e05d86da\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e codegen related update (\u003ca href=\"https://github.com/openai/openai-node/commit/f184586fbcb8c7c07bf439455d6317aba62719ec\"\u003ef184586\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.35.0 (2026-04-28)\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/openai/openai-node/commit/b0e89cddad2e9ee4f8262c0f1157c7376ecf4156\"\u003e\u003ccode\u003eb0e89cd\u003c/code\u003e\u003c/a\u003e release: 6.37.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/21510635ece628e0063c324e390868385c9de3dd\"\u003e\u003ccode\u003e2151063\u003c/code\u003e\u003c/a\u003e feat(api): realtime 2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/a5c41848ba2eb0cfc412b54200b0b7e6acc99dab\"\u003e\u003ccode\u003ea5c4184\u003c/code\u003e\u003c/a\u003e feat(api): manual updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/17c79fb09ba7b6a36a9ee3d7d6b19c6502b15f2b\"\u003e\u003ccode\u003e17c79fb\u003c/code\u003e\u003c/a\u003e chore: redact api-key headers in debug logs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/36f69f6e078d308ed8876625d7d06fa210d649e5\"\u003e\u003ccode\u003e36f69f6\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/5cd49e4f1be6c894f7a76dd574e9fc20c637d379\"\u003e\u003ccode\u003e5cd49e4\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/a1b2c9c6b55506cfd24000552a68bd3c8d8ecbdc\"\u003e\u003ccode\u003ea1b2c9c\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/badc738fe03249b396a2eb6957bc854fec0bab99\"\u003e\u003ccode\u003ebadc738\u003c/code\u003e\u003c/a\u003e fix(api): fix imagegen \u003ccode\u003esize\u003c/code\u003e enum regression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/15d48e0d25da50b083b8f721b5ecad41b0775de6\"\u003e\u003ccode\u003e15d48e0\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/0ff2cdad1f3ba9e4d76eab7a9ca125b5cac6524f\"\u003e\u003ccode\u003e0ff2cda\u003c/code\u003e\u003c/a\u003e feat(api): add quantity field to admin organization usage responses\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/openai/openai-node/compare/v6.33.0...v6.37.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `react` from 19.2.4 to 19.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003ereact's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.2.6 (May 6th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eType hardening and performance improvements\n(\u003ca href=\"https://redirect.github.com/facebook/react/pull/36425\"\u003e#36425\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.2.5 (April 8th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd more cycle protections (\u003ca href=\"https://redirect.github.com/facebook/react/pull/36236\"\u003e#36236\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\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/facebook/react/commit/eaf3e95ca92be7a23d3c9cc8ffd6f199a40be401\"\u003e\u003ccode\u003eeaf3e95\u003c/code\u003e\u003c/a\u003e Version 19.2.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facebook/react/commit/23f4f9f30da9e9af2108c18bb197bae75ab584ea\"\u003e\u003ccode\u003e23f4f9f\u003c/code\u003e\u003c/a\u003e 19.2.5\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/facebook/react/commits/v19.2.6/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `react-dom` from 19.2.4 to 19.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003ereact-dom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.2.6 (May 6th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eType hardening and performance improvements\n(\u003ca href=\"https://redirect.github.com/facebook/react/pull/36425\"\u003e#36425\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.2.5 (April 8th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd more cycle protections (\u003ca href=\"https://redirect.github.com/facebook/react/pull/36236\"\u003e#36236\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\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/facebook/react/commit/eaf3e95ca92be7a23d3c9cc8ffd6f199a40be401\"\u003e\u003ccode\u003eeaf3e95\u003c/code\u003e\u003c/a\u003e Version 19.2.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facebook/react/commit/23f4f9f30da9e9af2108c18bb197bae75ab584ea\"\u003e\u003ccode\u003e23f4f9f\u003c/code\u003e\u003c/a\u003e 19.2.5\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/facebook/react/commits/v19.2.6/packages/react-dom\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwind-merge` from 3.5.0 to 3.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dcastil/tailwind-merge/releases\"\u003etailwind-merge's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.0\u003c/h2\u003e\n\u003ch3\u003eNew Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Tailwind CSS v4.3 by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/677\"\u003edcastil/tailwind-merge#677\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epostfixLookupClassGroups\u003c/code\u003e option to config to support Tailwind utilities where a slash is part of the full class name, like named container queries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdd support for readonly array values by \u003ca href=\"https://github.com/unional\"\u003e\u003ccode\u003e@​unional\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/652\"\u003edcastil/tailwind-merge#652\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in README by \u003ca href=\"https://github.com/maurer2\"\u003e\u003ccode\u003e@​maurer2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/662\"\u003edcastil/tailwind-merge#662\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHarden internal CI pipeline security by omitting git checkout by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e, suggested by \u003ca href=\"https://github.com/kyletaylored\"\u003e\u003ccode\u003e@​kyletaylored\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\"\u003ehttps://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ehttps://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/brandonmcconnell\"\u003e\u003ccode\u003e@​brandonmcconnell\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/manavm1990\"\u003e\u003ccode\u003e@​manavm1990\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/langy\"\u003e\u003ccode\u003e@​langy\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roboflow\"\u003e\u003ccode\u003e@​roboflow\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/syntaxfm\"\u003e\u003ccode\u003e@​syntaxfm\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/getsentry\"\u003e\u003ccode\u003e@​getsentry\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/codecov\"\u003e\u003ccode\u003e@​codecov\u003c/code\u003e\u003c/a\u003e, a private sponsor, \u003ca href=\"https://github.com/block\"\u003e\u003ccode\u003e@​block\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/openclaw\"\u003e\u003ccode\u003e@​openclaw\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sourcegraph\"\u003e\u003ccode\u003e@​sourcegraph\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mike-healy\"\u003e\u003ccode\u003e@​mike-healy\u003c/code\u003e\u003c/a\u003e and more via \u003ca href=\"https://github.com/thnxdev\"\u003e\u003ccode\u003e@​thnxdev\u003c/code\u003e\u003c/a\u003e for sponsoring tailwind-merge! ❤️\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/dcastil/tailwind-merge/commit/d54f7e5713c653d0171971405344f7c6e44d418f\"\u003e\u003ccode\u003ed54f7e5\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/638871a67a0a124ac9275eda77cd08b03f2f045e\"\u003e\u003ccode\u003e638871a\u003c/code\u003e\u003c/a\u003e Update README to add info about Tailwind CSS v4.3 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/39fc7b5e915493e5eb3ddb1ca615f5b2eeff2540\"\u003e\u003ccode\u003e39fc7b5\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;v3.6.0\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/bd8390f6ca387f93c9e989fb3fb09924fb843445\"\u003e\u003ccode\u003ebd8390f\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/802877c6e31f9fb64c627e5e760729a16cd0a69b\"\u003e\u003ccode\u003e802877c\u003c/code\u003e\u003c/a\u003e add v3.6.0 changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/a35fedac7d1fc8756223da94290a83a32068d2ae\"\u003e\u003ccode\u003ea35feda\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/665\"\u003e#665\u003c/a\u003e from dcastil/renovate/rollup-plugin-babel-7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/940389cf89ed0da277ff5c01b98fd619687926e9\"\u003e\u003ccode\u003e940389c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/667\"\u003e#667\u003c/a\u003e from dcastil/renovate/release-drafter-release-drafter...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/005af6df08cfbe2adac7ca6cb5a7be02b9261fbd\"\u003e\u003ccode\u003e005af6d\u003c/code\u003e\u003c/a\u003e pin to specific version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/5816ced627ebcaefd497ad8e4202baf750dd545c\"\u003e\u003ccode\u003e5816ced\u003c/code\u003e\u003c/a\u003e implement breaking changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/17041e17c5b9c96fcb0f4758c718799cb3af14a6\"\u003e\u003ccode\u003e17041e1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/676\"\u003e#676\u003c/a\u003e from dcastil/dependabot/npm_and_yarn/babel/plugin-tra...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zod` from 4.3.6 to 4.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/colinhacks/zod/releases\"\u003ezod's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.3\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e4c2fa95ce3f3390fbc522324e406b4e9e89b88f9 docs: use Zernio primary wordmark for gold sponsor logo\u003c/li\u003e\n\u003cli\u003e2aeec83eb135e3a83756e973ef44845fc5a455d2 docs: prune lapsed gold sponsors and rebalance logo sizing\u003c/li\u003e\n\u003cli\u003e7391be88ac1ee5cd02057f5ccc012a1f5df4efd0 docs: prune lapsed silver/bronze sponsors and add active ones\u003c/li\u003e\n\u003cli\u003e2c703322a21b4e2b12f33f49ea8430c451a68b4f docs: normalize bronze sponsor logos to github avatar pattern\u003c/li\u003e\n\u003cli\u003e9195250cab0e7950efe39c3926d6c203b4b0a170 docs: remove Mintlify from bronze sponsors (churned)\u003c/li\u003e\n\u003cli\u003eb8dffe9e62f17e6571e6249d05cc5102b54d94e4 docs: remove Numeric and Speakeasy (2+ missed monthly cycles)\u003c/li\u003e\n\u003cli\u003e1cab69383fcdeae2a366d5e2a2fc4d8fc765d168 fix(v4): restore catch handling for absent object keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5937\"\u003e#5937\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5939\"\u003e#5939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ec2be4f819064eed62c7c350a2d399b5faecd15f8 fix(v4): generalize optin/fallback to transform; restore preprocess on absent keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5941\"\u003e#5941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ef3c9ec03ba7a28ae72d25cc295f38674bee0f559 4.4.3\u003c/li\u003e\n\u003cli\u003e1fb56a5c18c27102dbc92260a4007c7732a0ccca docs: document release procedure in AGENTS.md\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.2\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e0c62df0ea19fd05abdf90473e9eef7eea530fab2 Clean up docs navigation and stale labels (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5901\"\u003e#5901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e20cc794895cc8604fe0c87d83a5d1c3f89fad0ac chore: add security policy and refresh tooling deps\u003c/li\u003e\n\u003cli\u003e6fbe07b0177efdd1bf1c0b05160e70d7a0702337 fix(docs): heading anchor links now include the hash so it doesnt scoll all the way up, follows navbar logic (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5791\"\u003e#5791\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e4bbed1b1c73eca4ce9e59b1189ed236aa6c8b5bd Tighten discriminated union option typing\u003c/li\u003e\n\u003cli\u003ebbac3e567e7fccfaaf7cdc97f1ce30c295e2c908 Update PR guidance for agents\u003c/li\u003e\n\u003cli\u003ecf0dc942a32805c292fff59ade20a7ace980735a Merge remote-tracking branch 'origin/main' into fix-discriminated-union-key-constraint\u003c/li\u003e\n\u003cli\u003e292c894a5fd2aa42e527900b83d8d7a3009a709c docs: add Zernio gold sponsor\u003c/li\u003e\n\u003cli\u003e1fc9f311c28dcf80d0bb5a36b177086cbc3d8eca docs: document codec inversion\u003c/li\u003e\n\u003cli\u003e1373c85da9aeff704a9762d27bc58699618aefb7 docs: remove AI disclosure guidance\u003c/li\u003e\n\u003cli\u003ee20d02b473c08e3a4e557bc610b1b5fac079b649 chore: ignore triage notes\u003c/li\u003e\n\u003cli\u003ee58ea4d91b1dfe8194b73508203213cbc7e9c936 docs: test Zod Mini tab code heights\u003c/li\u003e\n\u003cli\u003e905761a5d127e8d5dd2ebb3bc88c75cb0b8149ff docs: document preprocess input type narrowing\u003c/li\u003e\n\u003cli\u003ebf64bac850d4dee2b7dde7e64909d5d796d32043 chore: tighten test guidance in AGENTS.md\u003c/li\u003e\n\u003cli\u003e8ec4e73f4c4693b6361ad591be40fb41eb8a9f95 chore: update play.ts scratch\u003c/li\u003e\n\u003cli\u003e02c2baf7d0d615872fa4528a8020603b71211702 Make z.preprocess defer optionality to inner schema (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e88015df8e25c44fb5385eb3ef28935119cd5edea fix(docs): drop deprecated \u003ccode\u003ebaseUrl\u003c/code\u003e from tsconfig\u003c/li\u003e\n\u003cli\u003ec59d4474e3b4cad1b323462186cf607178ce8267 4.4.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.1\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e481f7be4238c83ed58183f921b2646f340a91c6a ci: gate release publishing on full test workflow\u003c/li\u003e\n\u003cli\u003e95ccab423aec720b2523c3a64cdc7e3204537cc7 test(v3): restore optional undefined expectations\u003c/li\u003e\n\u003cli\u003ecede2c63739a5823d6aa5093d291e9a111da943d fix(v4): reject tuple holes before required defaults (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eedd0bf0f5ada4a8dc581c259407d7bbad0a71ea7 release: 4.4.1\u003c/li\u003e\n\u003cli\u003e180d83d1dbe6a59260710cc8637a3dea2281ee56 docs: remove Jazz featured sponsor\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.0\u003c/h2\u003e\n\u003ch2\u003e4.4.0\u003c/h2\u003e\n\u003cp\u003eThis is a minor release with a wide set of correctness and soundness fixes. Some fixes intentionally make Zod stricter, so code that depended on previously accepted invalid or ambiguous inputs may need small updates.\u003c/p\u003e\n\u003ch2\u003ePotentially breaking bug fixes\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/colinhacks/zod/commit/1fb56a5c18c27102dbc92260a4007c7732a0ccca\"\u003e\u003ccode\u003e1fb56a5\u003c/code\u003e\u003c/a\u003e docs: document release procedure in AGENTS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/f3c9ec03ba7a28ae72d25cc295f38674bee0f559\"\u003e\u003ccode\u003ef3c9ec0\u003c/code\u003e\u003c/a\u003e 4.4.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/c2be4f819064eed62c7c350a2d399b5faecd15f8\"\u003e\u003ccode\u003ec2be4f8\u003c/code\u003e\u003c/a\u003e fix(v4): generalize optin/fallback to transform; restore preprocess on absent...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/1cab69383fcdeae2a366d5e2a2fc4d8fc765d168\"\u003e\u003ccode\u003e1cab693\u003c/code\u003e\u003c/a\u003e fix(v4): restore catch handling for absent object keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5937\"\u003e#5937\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5939\"\u003e#5939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/b8dffe9e62f17e6571e6249d05cc5102b54d94e4\"\u003e\u003ccode\u003eb8dffe9\u003c/code\u003e\u003c/a\u003e docs: remove Numeric and Speakeasy (2+ missed monthly cycles)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/9195250cab0e7950efe39c3926d6c203b4b0a170\"\u003e\u003ccode\u003e9195250\u003c/code\u003e\u003c/a\u003e docs: remove Mintlify from bronze sponsors (churned)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/2c703322a21b4e2b12f33f49ea8430c451a68b4f\"\u003e\u003ccode\u003e2c70332\u003c/code\u003e\u003c/a\u003e docs: normalize bronze sponsor logos to github avatar pattern\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/7391be88ac1ee5cd02057f5ccc012a1f5df4efd0\"\u003e\u003ccode\u003e7391be8\u003c/code\u003e\u003c/a\u003e docs: prune lapsed silver/bronze sponsors and add active ones\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/2aeec83eb135e3a83756e973ef44845fc5a455d2\"\u003e\u003ccode\u003e2aeec83\u003c/code\u003e\u003c/a\u003e docs: prune lapsed gold sponsors and rebalance logo sizing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/4c2fa95ce3f3390fbc522324e406b4e9e89b88f9\"\u003e\u003ccode\u003e4c2fa95\u003c/code\u003e\u003c/a\u003e docs: use Zernio primary wordmark for gold sponsor logo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/colinhacks/zod/compare/v4.3.6...v4.4.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 zod since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@next/bundle-analyzer` from 16.2.2 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\"\u003e@​next/bundle-analyzer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.2.6\u003c/h2\u003e\n\u003cp\u003eThis release contains security fixes for the following advisories:\u003c/p\u003e\n\u003cp\u003eHigh:\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 - Incomplete Fix Follow-Up\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\u003eModerate:\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\u003eLow:\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\u003ch2\u003ev16.2.5\u003c/h2\u003e\n\u003cp\u003eThis release contains security fixes for the following advisories:\u003c/p\u003e\n\u003cp\u003eHigh:\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\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\u003eModerate:\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\u003eLow:\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\u003ch2\u003ev16.2.4\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release is backporting 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\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003echore: Bump reqwest to 0.13.2 (Fixes Google Fonts with Turbopack for Windows on ARM64) (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/next-bundle-analyzer/issues/92713\"\u003e#92713\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\u003eSee full diff in \u003ca href=\"https://github.com/vercel/next.js/commits/v16.2.6/packages/next-bundle-analyzer\"\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@​next/bundle-analyzer\u003c/code\u003e since your current version.\u003c/p\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/playw...\n\n_Description has been truncated_","html_url":"https://github.com/manumu-studio/learning-speaking-app/pull/64","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/manumu-studio%2Flearning-speaking-app/issues/64","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/64/packages"},{"uuid":"4424865348","node_id":"PR_kwDONNBgac7adE0E","number":170,"state":"open","title":"deps(deps): bump the production-dependencies group across 1 directory with 8 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T22:55:37.000Z","updated_at":"2026-05-11T23:06:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"production-dependencies","update_count":8,"packages":[{"name":"@clerk/nextjs","old_version":"7.2.7","new_version":"7.3.3","repository_url":"https://github.com/clerk/javascript"},{"name":"lucide-react","old_version":"1.11.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"resend","old_version":"6.12.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"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.13","repository_url":"https://github.com/pmndrs/zustand"},{"name":"@ast-grep/napi-linux-x64-gnu","old_version":"0.42.1","new_version":"0.42.2","repository_url":"https://github.com/ast-grep/ast-grep"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the production-dependencies group with 8 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@clerk/nextjs](https://github.com/clerk/javascript/tree/HEAD/packages/nextjs) | `7.2.7` | `7.3.3` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.11.0` | `1.14.0` |\n| [resend](https://github.com/resend/resend-node) | `6.12.2` | `6.12.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.13` |\n| [@ast-grep/napi-linux-x64-gnu](https://github.com/ast-grep/ast-grep) | `0.42.1` | `0.42.2` |\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\n\nUpdates `@clerk/nextjs` from 7.2.7 to 7.3.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/clerk/javascript/releases\"\u003e@​clerk/nextjs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​clerk/nextjs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.3.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/clerk/javascript/commit/0ab09a89af1d7452df734278288e8218710f0e0e\"\u003e\u003ccode\u003e0ab09a8\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/6408ab6ec58d06af3f8334cb5a7d8d2647b8012e\"\u003e\u003ccode\u003e6408ab6\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/5cda3ee8451cc9af375895824d24a5c3ed7fbee6\"\u003e\u003ccode\u003e5cda3ee\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.2\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​clerk/nextjs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.3.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eImproved \u003ccode\u003eauth()\u003c/code\u003e error message when \u003ccode\u003eclerkMiddleware()\u003c/code\u003e is not detected to mention that infrastructure issues (e.g. edge runtime errors or platform outages) can also cause this error. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8007\"\u003e#8007\u003c/a\u003e) by \u003ca href=\"https://github.com/jacekradko\"\u003e\u003ccode\u003e@​jacekradko\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/clerk/javascript/commit/7a5892f9bcaa1a6212e6e6d3741160929ffd027e\"\u003e\u003ccode\u003e7a5892f\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​clerk/nextjs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.3.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnforce middleware authorization during the keyless bootstrap window. \u003ccode\u003eauth.protect()\u003c/code\u003e and custom authorization checks now fail closed instead of being bypassed while the publishable key is being provisioned. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8369\"\u003e#8369\u003c/a\u003e) by \u003ca href=\"https://github.com/jacekradko\"\u003e\u003ccode\u003e@​jacekradko\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/clerk/javascript/commit/9e9230c8c3cbdb1c253ca7cdd24cc8d681b5ee5a\"\u003e\u003ccode\u003e9e9230c\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/68d32dfcc453080ef93edf69be8de765a342d88c\"\u003e\u003ccode\u003e68d32df\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/1c27d4dd41a27cf41c3823306fe88e026fed08fb\"\u003e\u003ccode\u003e1c27d4d\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/10011936981fc22bf7d3750f1591f0873ea78bcb\"\u003e\u003ccode\u003e1001193\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​clerk/nextjs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.3.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eExpose \u003ccode\u003eOAuthConsent\u003c/code\u003e as a public component export across React-based SDKs. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8381\"\u003e#8381\u003c/a\u003e) by \u003ca href=\"https://github.com/wobsoriano\"\u003e\u003ccode\u003e@​wobsoriano\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eExample:\u003c/p\u003e\n\u003cpre lang=\"tsx\"\u003e\u003ccode\u003eimport { OAuthConsent } from '@clerk/react';\n\u003cp\u003eexport default function Page() {\nreturn \u0026lt;OAuthConsent /\u0026gt;;\n}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/clerk/javascript/commit/785f057f5cda202c26a9f34bde7c1873a6cbd6ea\"\u003e\u003ccode\u003e785f057\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/90beaeb8319d5bccb8fa52343f4b241c6d2d3ebe\"\u003e\u003ccode\u003e90beaeb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/244920d1ebb5d420a96bfc2a79d84cccafe9b61c\"\u003e\u003ccode\u003e244920d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.9.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.5.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.4\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/clerk/javascript/blob/main/packages/nextjs/CHANGELOG.md\"\u003e@​clerk/nextjs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.3.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/clerk/javascript/commit/0ab09a89af1d7452df734278288e8218710f0e0e\"\u003e\u003ccode\u003e0ab09a8\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/6408ab6ec58d06af3f8334cb5a7d8d2647b8012e\"\u003e\u003ccode\u003e6408ab6\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/5cda3ee8451cc9af375895824d24a5c3ed7fbee6\"\u003e\u003ccode\u003e5cda3ee\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.2\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.3.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eImproved \u003ccode\u003eauth()\u003c/code\u003e error message when \u003ccode\u003eclerkMiddleware()\u003c/code\u003e is not detected to mention that infrastructure issues (e.g. edge runtime errors or platform outages) can also cause this error. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8007\"\u003e#8007\u003c/a\u003e) by \u003ca href=\"https://github.com/jacekradko\"\u003e\u003ccode\u003e@​jacekradko\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/clerk/javascript/commit/7a5892f9bcaa1a6212e6e6d3741160929ffd027e\"\u003e\u003ccode\u003e7a5892f\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.3.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnforce middleware authorization during the keyless bootstrap window. \u003ccode\u003eauth.protect()\u003c/code\u003e and custom authorization checks now fail closed instead of being bypassed while the publishable key is being provisioned. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8369\"\u003e#8369\u003c/a\u003e) by \u003ca href=\"https://github.com/jacekradko\"\u003e\u003ccode\u003e@​jacekradko\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/clerk/javascript/commit/9e9230c8c3cbdb1c253ca7cdd24cc8d681b5ee5a\"\u003e\u003ccode\u003e9e9230c\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/68d32dfcc453080ef93edf69be8de765a342d88c\"\u003e\u003ccode\u003e68d32df\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/1c27d4dd41a27cf41c3823306fe88e026fed08fb\"\u003e\u003ccode\u003e1c27d4d\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/10011936981fc22bf7d3750f1591f0873ea78bcb\"\u003e\u003ccode\u003e1001193\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.3.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eExpose \u003ccode\u003eOAuthConsent\u003c/code\u003e as a public component export across React-based SDKs. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8381\"\u003e#8381\u003c/a\u003e) by \u003ca href=\"https://github.com/wobsoriano\"\u003e\u003ccode\u003e@​wobsoriano\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eExample:\u003c/p\u003e\n\u003cpre lang=\"tsx\"\u003e\u003ccode\u003eimport { OAuthConsent } from '@clerk/react';\n\u003cp\u003eexport default function Page() {\nreturn \u0026lt;OAuthConsent /\u0026gt;;\n}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/clerk/javascript/commit/785f057f5cda202c26a9f34bde7c1873a6cbd6ea\"\u003e\u003ccode\u003e785f057\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/90beaeb8319d5bccb8fa52343f4b241c6d2d3ebe\"\u003e\u003ccode\u003e90beaeb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/244920d1ebb5d420a96bfc2a79d84cccafe9b61c\"\u003e\u003ccode\u003e244920d\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/clerk/javascript/commit/ba158acdd8a7292c7a4647702fa5fc9f57019d43\"\u003e\u003ccode\u003eba158ac\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8501\"\u003e#8501\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/4c44aa6586b032313d552e37701ecc5f2c9606e4\"\u003e\u003ccode\u003e4c44aa6\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8484\"\u003e#8484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/30ec271cacbfe57b1c71dcd53f3f1ca5e6c5525c\"\u003e\u003ccode\u003e30ec271\u003c/code\u003e\u003c/a\u003e fix(nextjs): improve auth() error message to mention infrastructure failures ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/cd6c4b7fcf989b5410f057138941ab47ca8afb3b\"\u003e\u003ccode\u003ecd6c4b7\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8440\"\u003e#8440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/f1d257db7376603ce4577086151231dac995d6ce\"\u003e\u003ccode\u003ef1d257d\u003c/code\u003e\u003c/a\u003e fix(nextjs): enforce middleware authorization during keyless bootstrap (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8369\"\u003e#8369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/b2e702e25adfc107ce772bb191d466ec0c7143fa\"\u003e\u003ccode\u003eb2e702e\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8438\"\u003e#8438\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/244920d1ebb5d420a96bfc2a79d84cccafe9b61c\"\u003e\u003ccode\u003e244920d\u003c/code\u003e\u003c/a\u003e chore(clerk-js,ui): Make OAuthConsent component public (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8381\"\u003e#8381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/76808591a9adb9c8ed53ecd40f291187a10ab4ee\"\u003e\u003ccode\u003e7680859\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8433\"\u003e#8433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/e85de1920380c6ad4b74f0161379606c75a4e9e7\"\u003e\u003ccode\u003ee85de19\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8413\"\u003e#8413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/9b5798696eb0c6cc6ab548ade100b504f691895c\"\u003e\u003ccode\u003e9b57986\u003c/code\u003e\u003c/a\u003e feat(*): auto-proxy for eligible hosts (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8035\"\u003e#8035\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/clerk/javascript/commits/@clerk/nextjs@7.3.3/packages/nextjs\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lucide-react` from 1.11.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lucide-icons/lucide/releases\"\u003elucide-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.14.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003erepeat-off\u003c/code\u003e icon by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3102\"\u003elucide-icons/lucide#3102\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.13.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(docs): sync URL params with UI state on categories page by \u003ca href=\"https://github.com/taimar\"\u003e\u003ccode\u003e@​taimar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4111\"\u003elucide-icons/lucide#4111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): add \u003ccode\u003ewaves-vertical\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3867\"\u003elucide-icons/lucide#3867\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.12.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icon): add folder-bookmark icon by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4262\"\u003elucide-icons/lucide#4262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(readme): Update readme files by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4320\"\u003elucide-icons/lucide#4320\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003eastroid\u003c/code\u003e icon by \u003ca href=\"https://github.com/whoisBugsbunny\"\u003e\u003ccode\u003e@​whoisBugsbunny\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4217\"\u003elucide-icons/lucide#4217\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.10.0...1.12.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.10.0...1.12.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/lucide-icons/lucide/commit/50d8af5a1012e188f3d71ac8f1fc0fba1aab5357\"\u003e\u003ccode\u003e50d8af5\u003c/code\u003e\u003c/a\u003e docs(readme): Update readme files (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4320\"\u003e#4320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/lucide-icons/lucide/commits/1.14.0/packages/lucide-react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `resend` from 6.12.2 to 6.12.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/resend/resend-node/releases\"\u003eresend's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.12.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\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/resend/resend-node/pull/940\"\u003eresend/resend-node#940\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): upgrade \u003ccode\u003esvix\u003c/code\u003e to silence GHSA-w5hq-g745-h8pq by \u003ca href=\"https://github.com/ulrichstark\"\u003e\u003ccode\u003e@​ulrichstark\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/942\"\u003eresend/resend-node#942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: correct \u003ccode\u003epaylaod\u003c/code\u003e into \u003ccode\u003epayload\u003c/code\u003e typo in contacts overload signatures by \u003ca href=\"https://github.com/wesleyramalho\"\u003e\u003ccode\u003e@​wesleyramalho\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/902\"\u003eresend/resend-node#902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency tsdown to v0.21.10 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/resend/resend-node/pull/929\"\u003eresend/resend-node#929\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​biomejs/biome\u003c/code\u003e to v2.4.14 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/resend/resend-node/pull/943\"\u003eresend/resend-node#943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add missing suppressed event to resend node sdk interface by \u003ca href=\"https://github.com/dielduarte\"\u003e\u003ccode\u003e@​dielduarte\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/946\"\u003eresend/resend-node#946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump sdk version to 6.12.3 by \u003ca href=\"https://github.com/dielduarte\"\u003e\u003ccode\u003e@​dielduarte\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/947\"\u003eresend/resend-node#947\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/ulrichstark\"\u003e\u003ccode\u003e@​ulrichstark\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/942\"\u003eresend/resend-node#942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/wesleyramalho\"\u003e\u003ccode\u003e@​wesleyramalho\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/902\"\u003eresend/resend-node#902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dielduarte\"\u003e\u003ccode\u003e@​dielduarte\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/946\"\u003eresend/resend-node#946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/resend/resend-node/compare/v6.12.2...v6.12.3\"\u003ehttps://github.com/resend/resend-node/compare/v6.12.2...v6.12.3\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/resend/resend-node/commit/3f41290fbef582bca0216dc343561b7723c057ce\"\u003e\u003ccode\u003e3f41290\u003c/code\u003e\u003c/a\u003e chore: bump sdk version to 6.12.3 (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/947\"\u003e#947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/2679c32e0d76ac269897458655d2e6671593b2ba\"\u003e\u003ccode\u003e2679c32\u003c/code\u003e\u003c/a\u003e chore: add missing suppressed event to resend node sdk interface (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/946\"\u003e#946\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/08cb7a13710901d0bda0e83d8385e44302e1d6de\"\u003e\u003ccode\u003e08cb7a1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​biomejs/biome\u003c/code\u003e to v2.4.14 (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/943\"\u003e#943\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/20741e3ac6fa26c5697ff2b878c33a288ca868e3\"\u003e\u003ccode\u003e20741e3\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency tsdown to v0.21.10 (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/929\"\u003e#929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/4e26bc0580f483c8a336e40056a96e46811052c6\"\u003e\u003ccode\u003e4e26bc0\u003c/code\u003e\u003c/a\u003e fix: correct \u003ccode\u003epaylaod\u003c/code\u003e into \u003ccode\u003epayload\u003c/code\u003e typo in contacts overload signatures (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/9ca7487ac4127baf66fb622b7fd2aba45919a14f\"\u003e\u003ccode\u003e9ca7487\u003c/code\u003e\u003c/a\u003e chore(deps): upgrade \u003ccode\u003esvix\u003c/code\u003e to silence GHSA-w5hq-g745-h8pq (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/942\"\u003e#942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/6759d31638a9d8537a27b593a94e5114b168127a\"\u003e\u003ccode\u003e6759d31\u003c/code\u003e\u003c/a\u003e chore(deps): update pnpm to v10.33.2 (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/940\"\u003e#940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/resend/resend-node/compare/v6.12.2...v6.12.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwind-merge` from 3.5.0 to 3.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dcastil/tailwind-merge/releases\"\u003etailwind-merge's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.0\u003c/h2\u003e\n\u003ch3\u003eNew Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Tailwind CSS v4.3 by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/677\"\u003edcastil/tailwind-merge#677\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epostfixLookupClassGroups\u003c/code\u003e option to config to support Tailwind utilities where a slash is part of the full class name, like named container queries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdd support for readonly array values by \u003ca href=\"https://github.com/unional\"\u003e\u003ccode\u003e@​unional\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/652\"\u003edcastil/tailwind-merge#652\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in README by \u003ca href=\"https://github.com/maurer2\"\u003e\u003ccode\u003e@​maurer2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/662\"\u003edcastil/tailwind-merge#662\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHarden internal CI pipeline security by omitting git checkout by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e, suggested by \u003ca href=\"https://github.com/kyletaylored\"\u003e\u003ccode\u003e@​kyletaylored\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\"\u003ehttps://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ehttps://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/brandonmcconnell\"\u003e\u003ccode\u003e@​brandonmcconnell\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/manavm1990\"\u003e\u003ccode\u003e@​manavm1990\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/langy\"\u003e\u003ccode\u003e@​langy\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roboflow\"\u003e\u003ccode\u003e@​roboflow\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/syntaxfm\"\u003e\u003ccode\u003e@​syntaxfm\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/getsentry\"\u003e\u003ccode\u003e@​getsentry\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/codecov\"\u003e\u003ccode\u003e@​codecov\u003c/code\u003e\u003c/a\u003e, a private sponsor, \u003ca href=\"https://github.com/block\"\u003e\u003ccode\u003e@​block\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/openclaw\"\u003e\u003ccode\u003e@​openclaw\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sourcegraph\"\u003e\u003ccode\u003e@​sourcegraph\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mike-healy\"\u003e\u003ccode\u003e@​mike-healy\u003c/code\u003e\u003c/a\u003e and more via \u003ca href=\"https://github.com/thnxdev\"\u003e\u003ccode\u003e@​thnxdev\u003c/code\u003e\u003c/a\u003e for sponsoring tailwind-merge! ❤️\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/dcastil/tailwind-merge/commit/d54f7e5713c653d0171971405344f7c6e44d418f\"\u003e\u003ccode\u003ed54f7e5\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/638871a67a0a124ac9275eda77cd08b03f2f045e\"\u003e\u003ccode\u003e638871a\u003c/code\u003e\u003c/a\u003e Update README to add info about Tailwind CSS v4.3 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/39fc7b5e915493e5eb3ddb1ca615f5b2eeff2540\"\u003e\u003ccode\u003e39fc7b5\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;v3.6.0\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/bd8390f6ca387f93c9e989fb3fb09924fb843445\"\u003e\u003ccode\u003ebd8390f\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/802877c6e31f9fb64c627e5e760729a16cd0a69b\"\u003e\u003ccode\u003e802877c\u003c/code\u003e\u003c/a\u003e add v3.6.0 changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/a35fedac7d1fc8756223da94290a83a32068d2ae\"\u003e\u003ccode\u003ea35feda\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/665\"\u003e#665\u003c/a\u003e from dcastil/renovate/rollup-plugin-babel-7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/940389cf89ed0da277ff5c01b98fd619687926e9\"\u003e\u003ccode\u003e940389c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/667\"\u003e#667\u003c/a\u003e from dcastil/renovate/release-drafter-release-drafter...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/005af6df08cfbe2adac7ca6cb5a7be02b9261fbd\"\u003e\u003ccode\u003e005af6d\u003c/code\u003e\u003c/a\u003e pin to specific version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/5816ced627ebcaefd497ad8e4202baf750dd545c\"\u003e\u003ccode\u003e5816ced\u003c/code\u003e\u003c/a\u003e implement breaking changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/17041e17c5b9c96fcb0f4758c718799cb3af14a6\"\u003e\u003ccode\u003e17041e1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/676\"\u003e#676\u003c/a\u003e from dcastil/dependabot/npm_and_yarn/babel/plugin-tra...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zod` from 4.3.6 to 4.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/colinhacks/zod/releases\"\u003ezod's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.3\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e4c2fa95ce3f3390fbc522324e406b4e9e89b88f9 docs: use Zernio primary wordmark for gold sponsor logo\u003c/li\u003e\n\u003cli\u003e2aeec83eb135e3a83756e973ef44845fc5a455d2 docs: prune lapsed gold sponsors and rebalance logo sizing\u003c/li\u003e\n\u003cli\u003e7391be88ac1ee5cd02057f5ccc012a1f5df4efd0 docs: prune lapsed silver/bronze sponsors and add active ones\u003c/li\u003e\n\u003cli\u003e2c703322a21b4e2b12f33f49ea8430c451a68b4f docs: normalize bronze sponsor logos to github avatar pattern\u003c/li\u003e\n\u003cli\u003e9195250cab0e7950efe39c3926d6c203b4b0a170 docs: remove Mintlify from bronze sponsors (churned)\u003c/li\u003e\n\u003cli\u003eb8dffe9e62f17e6571e6249d05cc5102b54d94e4 docs: remove Numeric and Speakeasy (2+ missed monthly cycles)\u003c/li\u003e\n\u003cli\u003e1cab69383fcdeae2a366d5e2a2fc4d8fc765d168 fix(v4): restore catch handling for absent object keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5937\"\u003e#5937\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5939\"\u003e#5939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ec2be4f819064eed62c7c350a2d399b5faecd15f8 fix(v4): generalize optin/fallback to transform; restore preprocess on absent keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5941\"\u003e#5941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ef3c9ec03ba7a28ae72d25cc295f38674bee0f559 4.4.3\u003c/li\u003e\n\u003cli\u003e1fb56a5c18c27102dbc92260a4007c7732a0ccca docs: document release procedure in AGENTS.md\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.2\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e0c62df0ea19fd05abdf90473e9eef7eea530fab2 Clean up docs navigation and stale labels (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5901\"\u003e#5901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e20cc794895cc8604fe0c87d83a5d1c3f89fad0ac chore: add security policy and refresh tooling deps\u003c/li\u003e\n\u003cli\u003e6fbe07b0177efdd1bf1c0b05160e70d7a0702337 fix(docs): heading anchor links now include the hash so it doesnt scoll all the way up, follows navbar logic (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5791\"\u003e#5791\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e4bbed1b1c73eca4ce9e59b1189ed236aa6c8b5bd Tighten discriminated union option typing\u003c/li\u003e\n\u003cli\u003ebbac3e567e7fccfaaf7cdc97f1ce30c295e2c908 Update PR guidance for agents\u003c/li\u003e\n\u003cli\u003ecf0dc942a32805c292fff59ade20a7ace980735a Merge remote-tracking branch 'origin/main' into fix-discriminated-union-key-constraint\u003c/li\u003e\n\u003cli\u003e292c894a5fd2aa42e527900b83d8d7a3009a709c docs: add Zernio gold sponsor\u003c/li\u003e\n\u003cli\u003e1fc9f311c28dcf80d0bb5a36b177086cbc3d8eca docs: document codec inversion\u003c/li\u003e\n\u003cli\u003e1373c85da9aeff704a9762d27bc58699618aefb7 docs: remove AI disclosure guidance\u003c/li\u003e\n\u003cli\u003ee20d02b473c08e3a4e557bc610b1b5fac079b649 chore: ignore triage notes\u003c/li\u003e\n\u003cli\u003ee58ea4d91b1dfe8194b73508203213cbc7e9c936 docs: test Zod Mini tab code heights\u003c/li\u003e\n\u003cli\u003e905761a5d127e8d5dd2ebb3bc88c75cb0b8149ff docs: document preprocess input type narrowing\u003c/li\u003e\n\u003cli\u003ebf64bac850d4dee2b7dde7e64909d5d796d32043 chore: tighten test guidance in AGENTS.md\u003c/li\u003e\n\u003cli\u003e8ec4e73f4c4693b6361ad591be40fb41eb8a9f95 chore: update play.ts scratch\u003c/li\u003e\n\u003cli\u003e02c2baf7d0d615872fa4528a8020603b71211702 Make z.preprocess defer optionality to inner schema (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e88015df8e25c44fb5385eb3ef28935119cd5edea fix(docs): drop deprecated \u003ccode\u003ebaseUrl\u003c/code\u003e from tsconfig\u003c/li\u003e\n\u003cli\u003ec59d4474e3b4cad1b323462186cf607178ce8267 4.4.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.1\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e481f7be4238c83ed58183f921b2646f340a91c6a ci: gate release publishing on full test workflow\u003c/li\u003e\n\u003cli\u003e95ccab423aec720b2523c3a64cdc7e3204537cc7 test(v3): restore optional undefined expectations\u003c/li\u003e\n\u003cli\u003ecede2c63739a5823d6aa5093d291e9a111da943d fix(v4): reject tuple holes before required defaults (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eedd0bf0f5ada4a8dc581c259407d7bbad0a71ea7 release: 4.4.1\u003c/li\u003e\n\u003cli\u003e180d83d1dbe6a59260710cc8637a3dea2281ee56 docs: remove Jazz featured sponsor\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.0\u003c/h2\u003e\n\u003ch2\u003e4.4.0\u003c/h2\u003e\n\u003cp\u003eThis is a minor release with a wide set of correctness and soundness fixes. Some fixes intentionally make Zod stricter, so code that depended on previously accepted invalid or ambiguous inputs may need small updates.\u003c/p\u003e\n\u003ch2\u003ePotentially breaking bug fixes\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/colinhacks/zod/commit/1fb56a5c18c27102dbc92260a4007c7732a0ccca\"\u003e\u003ccode\u003e1fb56a5\u003c/code\u003e\u003c/a\u003e docs: document release procedure in AGENTS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/f3c9ec03ba7a28ae72d25cc295f38674bee0f559\"\u003e\u003ccode\u003ef3c9ec0\u003c/code\u003e\u003c/a\u003e 4.4.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/c2be4f819064eed62c7c350a2d399b5faecd15f8\"\u003e\u003ccode\u003ec2be4f8\u003c/code\u003e\u003c/a\u003e fix(v4): generalize optin/fallback to transform; restore preprocess on absent...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/1cab69383fcdeae2a366d5e2a2fc4d8fc765d168\"\u003e\u003ccode\u003e1cab693\u003c/code\u003e\u003c/a\u003e fix(v4): restore catch handling for absent object keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5937\"\u003e#5937\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5939\"\u003e#5939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/b8dffe9e62f17e6571e6249d05cc5102b54d94e4\"\u003e\u003ccode\u003eb8dffe9\u003c/code\u003e\u003c/a\u003e docs: remove Numeric and Speakeasy (2+ missed monthly cycles)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/9195250cab0e7950efe39c3926d6c203b4b0a170\"\u003e\u003ccode\u003e9195250\u003c/code\u003e\u003c/a\u003e docs: remove Mintlify from bronze sponsors (churned)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/2c703322a21b4e2b12f33f49ea8430c451a68b4f\"\u003e\u003ccode\u003e2c70332\u003c/code\u003e\u003c/a\u003e docs: normalize bronze sponsor logos to github avatar pattern\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/7391be88ac1ee5cd02057f5ccc012a1f5df4efd0\"\u003e\u003ccode\u003e7391be8\u003c/code\u003e\u003c/a\u003e docs: prune lapsed silver/bronze sponsors and add active ones\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/2aeec83eb135e3a83756e973ef44845fc5a455d2\"\u003e\u003ccode\u003e2aeec83\u003c/code\u003e\u003c/a\u003e docs: prune lapsed gold sponsors and rebalance logo sizing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/4c2fa95ce3f3390fbc522324e406b4e9e89b88f9\"\u003e\u003ccode\u003e4c2fa95\u003c/code\u003e\u003c/a\u003e docs: use Zernio primary wordmark for gold sponsor logo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/colinhacks/zod/compare/v4.3.6...v4.4.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 zod since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zustand` from 5.0.12 to 5.0.13\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.13\u003c/h2\u003e\n\u003cp\u003eThis release includes an improvement in the devtools middleware.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erefactor(devtools): remove duplicate module augmentation by \u003ca href=\"https://github.com/mahmoodhamdi\"\u003e\u003ccode\u003e@​mahmoodhamdi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3443\"\u003epmndrs/zustand#3443\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(devtools): support Firefox/Safari stack format in findCallerName by \u003ca href=\"https://github.com/SBolsec\"\u003e\u003ccode\u003e@​SBolsec\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3469\"\u003epmndrs/zustand#3469\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/mahmoodhamdi\"\u003e\u003ccode\u003e@​mahmoodhamdi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3443\"\u003epmndrs/zustand#3443\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FelixEckl-vireq\"\u003e\u003ccode\u003e@​FelixEckl-vireq\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3466\"\u003epmndrs/zustand#3466\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/KimHyeongRae0\"\u003e\u003ccode\u003e@​KimHyeongRae0\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3471\"\u003epmndrs/zustand#3471\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lstak\"\u003e\u003ccode\u003e@​lstak\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3483\"\u003epmndrs/zustand#3483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexRixten\"\u003e\u003ccode\u003e@​AlexRixten\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3474\"\u003epmndrs/zustand#3474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SBolsec\"\u003e\u003ccode\u003e@​SBolsec\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3469\"\u003epmndrs/zustand#3469\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.12...v5.0.13\"\u003ehttps://github.com/pmndrs/zustand/compare/v5.0.12...v5.0.13\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/6bc451efd5f0d4ef6e7b2c8d6fc6f8340562a31d\"\u003e\u003ccode\u003e6bc451e\u003c/code\u003e\u003c/a\u003e 5.0.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/8ec2169e85d53899a98007c9d2465d3f11ac1281\"\u003e\u003ccode\u003e8ec2169\u003c/code\u003e\u003c/a\u003e chore(deps): update dev dependencies (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3486\"\u003e#3486\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/4e9bcf0c82938cfe2463495a845806cd5ec3e59b\"\u003e\u003ccode\u003e4e9bcf0\u003c/code\u003e\u003c/a\u003e fix(devtools): support Firefox/Safari stack format in findCallerName (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3469\"\u003e#3469\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/4b96f4e3a53abdbb1419cacadddc9b1bd786dab3\"\u003e\u003ccode\u003e4b96f4e\u003c/code\u003e\u003c/a\u003e fix(docs): correct react-dom test utils import path (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3474\"\u003e#3474\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/c7516c1166c59435b07d66f6eda80a8619dd62b3\"\u003e\u003ccode\u003ec7516c1\u003c/code\u003e\u003c/a\u003e fix(tests): change parameters for 'expect' in test (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3483\"\u003e#3483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/1b04af1d970e4c326bf1d8c87cd55196fb177d32\"\u003e\u003ccode\u003e1b04af1\u003c/code\u003e\u003c/a\u003e docs(persist): fix signature to require persistOptions (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3477\"\u003e#3477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/95d3f338c463f499aaa7a8dd5448c8b13a7dec0b\"\u003e\u003ccode\u003e95d3f33\u003c/code\u003e\u003c/a\u003e test(middleware/immer): add runtime tests for immer middleware (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3471\"\u003e#3471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/32013285083648e8d58ba1f76d73b9bdc02fef50\"\u003e\u003ccode\u003e3201328\u003c/code\u003e\u003c/a\u003e Update TypeScript guide links in README.md (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3466\"\u003e#3466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/00f96a389d4015ecf4eadb42aa1e4e0efe14bb95\"\u003e\u003ccode\u003e00f96a3\u003c/code\u003e\u003c/a\u003e chore(deps): bump actions/deploy-pages from 4.0.5 to 5.0.0 (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3447\"\u003e#3447\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/63300440c67b41e7db2b81538b5aa5d72693afc9\"\u003e\u003ccode\u003e6330044\u003c/code\u003e\u003c/a\u003e test: expand React subscribe test coverage (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmndrs/zustand/compare/v5.0.12...v5.0.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ast-grep/napi-linux-x64-gnu` from 0.42.1 to 0.42.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ast-grep/ast-grep/releases\"\u003e@​ast-grep/napi-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.42.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.52.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2620\"\u003e\u003ccode\u003e[#2620](https://github.com/ast-grep/ast-grep/issues/2620)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2623\"\u003e\u003ccode\u003e[#2623](https://github.com/ast-grep/ast-grep/issues/2623)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.4 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2627\"\u003e\u003ccode\u003e[#2627](https://github.com/ast-grep/ast-grep/issues/2627)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v24.12.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2624\"\u003e\u003ccode\u003e[#2624](https://github.com/ast-grep/ast-grep/issues/2624)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-swift to v0.7.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2619\"\u003e\u003ccode\u003e[#2619](https://github.com/ast-grep/ast-grep/issues/2619)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.63.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2621\"\u003e\u003ccode\u003e[#2621](https://github.com/ast-grep/ast-grep/issues/2621)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: replace postinstall script with binary resolution in ast-grep \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2595\"\u003e\u003ccode\u003e[#2595](https://github.com/ast-grep/ast-grep/issues/2595)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lsp): use cwd instead of config dir as workspace fallback \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2600\"\u003e\u003ccode\u003e[#2600](https://github.com/ast-grep/ast-grep/issues/2600)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2613\"\u003e\u003ccode\u003e[#2613](https://github.com/ast-grep/ast-grep/issues/2613)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi-derive to v3.5.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2615\"\u003e\u003ccode\u003e[#2615](https://github.com/ast-grep/ast-grep/issues/2615)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi to v3.8.6 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2614\"\u003e\u003ccode\u003e[#2614](https://github.com/ast-grep/ast-grep/issues/2614)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2610\"\u003e\u003ccode\u003e[#2610](https://github.com/ast-grep/ast-grep/issues/2610)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.62.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2611\"\u003e\u003ccode\u003e[#2611](https://github.com/ast-grep/ast-grep/issues/2611)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update astral-sh/setup-uv action to v8 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2604\"\u003e\u003ccode\u003e[#2604](https://github.com/ast-grep/ast-grep/issues/2604)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-c to v0.24.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2608\"\u003e\u003ccode\u003e[#2608](https://github.com/ast-grep/ast-grep/issues/2608)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust crate tree-sitter-dart to 0.2.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2609\"\u003e\u003ccode\u003e[#2609](https://github.com/ast-grep/ast-grep/issues/2609)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update robinraju/release-downloader action to v1.13 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2606\"\u003e\u003ccode\u003e[#2606](https://github.com/ast-grep/ast-grep/issues/2606)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lsp): report unused suppressions without rules \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2607\"\u003e\u003ccode\u003e[#2607](https://github.com/ast-grep/ast-grep/issues/2607)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2589\"\u003e\u003ccode\u003e[#2589](https://github.com/ast-grep/ast-grep/issues/2589)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.61.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2605\"\u003e\u003ccode\u003e[#2605](https://github.com/ast-grep/ast-grep/issues/2605)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate similar to v3.1.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2587\"\u003e\u003ccode\u003e[#2587](https://github.com/ast-grep/ast-grep/issues/2587)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust crate tree-sitter-scala to 0.26.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2602\"\u003e\u003ccode\u003e[#2602](https://github.com/ast-grep/ast-grep/issues/2602)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-scala to v0.25.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2601\"\u003e\u003ccode\u003e[#2601](https://github.com/ast-grep/ast-grep/issues/2601)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-c-sharp to v0.23.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2591\"\u003e\u003ccode\u003e[#2591](https://github.com/ast-grep/ast-grep/issues/2591)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.60.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2588\"\u003e\u003ccode\u003e[#2588](https://github.com/ast-grep/ast-grep/issues/2588)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate assert_cmd to v2.2.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2599\"\u003e\u003ccode\u003e[#2599](https://github.com/ast-grep/ast-grep/issues/2599)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency typescript to v6.0.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2598\"\u003e\u003ccode\u003e[#2598](https://github.com/ast-grep/ast-grep/issues/2598)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​napi-rs/cli\u003c/code\u003e to v3.6.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2593\"\u003e\u003ccode\u003e[#2593](https://github.com/ast-grep/ast-grep/issues/2593)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi-derive to v3.5.4 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2597\"\u003e\u003ccode\u003e[#2597](https://github.com/ast-grep/ast-grep/issues/2597)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi to v3.8.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2596\"\u003e\u003ccode\u003e[#2596](https://github.com/ast-grep/ast-grep/issues/2596)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.52.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2592\"\u003e\u003ccode\u003e[#2592](https://github.com/ast-grep/ast-grep/issues/2592)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap to v4.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2594\"\u003e\u003ccode\u003e[#2594](https://github.com/ast-grep/ast-grep/issues/2594)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update pyo3/maturin-action action to v1.51.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2510\"\u003e\u003ccode\u003e[#2510](https://github.com/ast-grep/ast-grep/issues/2510)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2568\"\u003e\u003ccode\u003e[#2568](https://github.com/ast-grep/ast-grep/issues/2568)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​napi-rs/cli\u003c/code\u003e to v3.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2583\"\u003e\u003ccode\u003e[#2583](https://github.com/ast-grep/ast-grep/issues/2583)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​ast-grep/napi\u003c/code\u003e to v0.42.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2580\"\u003e\u003ccode\u003e[#2580](https://github.com/ast-grep/ast-grep/issues/2580)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.59.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2581\"\u003e\u003ccode\u003e[#2581](https://github.com/ast-grep/ast-grep/issues/2581)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate toml_edit to v0.25.11 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2582\"\u003e\u003ccode\u003e[#2582](https://github.com/ast-grep/ast-grep/issues/2582)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.51.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2584\"\u003e\u003ccode\u003e[#2584](https://github.com/ast-grep/ast-grep/issues/2584)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency dprint to v0.54.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2585\"\u003e\u003ccode\u003e[#2585](https://github.com/ast-grep/ast-grep/issues/2585)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2586\"\u003e\u003ccode\u003e[#2586](https://github.com/ast-grep/ast-grep/issues/2586)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v24.12.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2579\"\u003e\u003ccode\u003e[#2579](https://github.com/ast-grep/ast-grep/issues/2579)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: enable npx install fallback but still keep postinstall \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/fbc5b9b67d7f7f4e86406a7fcf491cbfab327098\"\u003e\u003ccode\u003efbc5b9b\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump kotlin version \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/6f09a5b02dc95ab083b614b4d972059b9afe3a23\"\u003e\u003ccode\u003e6f09a5b\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: solve linting \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/945328aa3157370ce8fcc207358e29490d257fb6\"\u003e\u003ccode\u003e945328a\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/ast-grep/ast-grep/blob/main/CHANGELOG.md\"\u003e@​ast-grep/napi-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch4\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/compare/0.42.1...0.42.2\"\u003e0.42.2\u003c/a\u003e\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.52.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2620\"\u003e\u003ccode\u003e[#2620](https://github.com/ast-grep/ast-grep/issues/2620)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2623\"\u003e\u003ccode\u003e[#2623](https://github.com/ast-grep/ast-grep/issues/2623)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.4 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2627\"\u003e\u003ccode\u003e[#2627](https://github.com/ast-grep/ast-grep/issues/2627)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v24.12.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2624\"\u003e\u003ccode\u003e[#2624](https://github.com/ast-grep/ast-grep/issues/2624)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-swift to v0.7.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2619\"\u003e\u003ccode\u003e[#2619](https://github.com/ast-grep/ast-grep/issues/2619)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.63.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2621\"\u003e\u003ccode\u003e[#2621](https://github.com/ast-grep/ast-grep/issues/2621)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: replace postinstall script with binary resolution in ast-grep \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2595\"\u003e\u003ccode\u003e[#2595](https://github.com/ast-grep/ast-grep/issues/2595)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lsp): use cwd instead of config dir as workspace fallback \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2600\"\u003e\u003ccode\u003e[#2600](https://github.com/ast-grep/ast-grep/issues/2600)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2613\"\u003e\u003ccode\u003e[#2613](https://github.com/ast-grep/ast-grep/issues/2613)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi-derive to v3.5.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2615\"\u003e\u003ccode\u003e[#2615](https://github.com/ast-grep/ast-grep/issues/2615)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi to v3.8.6 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2614\"\u003e\u003ccode\u003e[#2614](https://github.com/ast-grep/ast-grep/issues/2614)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2610\"\u003e\u003ccode\u003e[#2610](https://github.com/ast-grep/ast-grep/issues/2610)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.62.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2611\"\u003e\u003ccode\u003e[#2611](https://github.com/ast-grep/ast-grep/issues/2611)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update astral-sh/setup-uv action to v8 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2604\"\u003e\u003ccode\u003e[#2604](https://github.com/ast-grep/ast-grep/issues/2604)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-c to v0.24.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2608\"\u003e\u003ccode\u003e[#2608](https://github.com/ast-grep/ast-grep/issues/2608)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust crate tree-sitter-dart to 0.2.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2609\"\u003e\u003ccode\u003e[#2609](https://github.com/ast-grep/ast-grep/issues/2609)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update robinraju/release-downloader action to v1.13 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2606\"\u003e\u003ccode\u003e[#2606](https://github.com/ast-grep/ast-grep/issues/2606)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lsp): report unused suppressions without rules \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2607\"\u003e\u003ccode\u003e[#2607](https://github.com/ast-grep/ast-grep/issues/2607)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2589\"\u003e\u003ccode\u003e[#2589](https://github.com/ast-grep/ast-grep/issues/2589)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.61.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2605\"\u003e\u003ccode\u003e[#2605](https://github.com/ast-grep/ast-grep/issues/2605)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate similar to v3.1.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2587\"\u003e\u003ccode\u003e[#2587](https://github.com/ast-grep/ast-grep/issues/2587)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust crate tree-sitter-scala to 0.26.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2602\"\u003e\u003ccode\u003e[#2602](https://github.com/ast-grep/ast-grep/issues/2602)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-scala to v0.25.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2601\"\u003e\u003ccode\u003e[#2601](https://github.com/ast-grep/ast-grep/issues/2601)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-c-sharp to v0.23.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2591\"\u003e\u003ccode\u003e[#2591](https://github.com/ast-grep/ast-grep/issues/2591)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.60.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2588\"\u003e\u003ccode\u003e[#2588](https://github.com/ast-grep/ast-grep/issues/2588)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate assert_cmd to v2.2.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2599\"\u003e\u003ccode\u003e[#2599](https://github.com/ast-grep/ast-grep/issues/2599)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency typescript to v6.0.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2598\"\u003e\u003ccode\u003e[#2598](https://github.com/ast-grep/ast-grep/issues/2598)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​napi-rs/cli\u003c/code\u003e to v3.6.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2593\"\u003e\u003ccode\u003e[#2593](https://github.com/ast-grep/ast-grep/issues/2593)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi-derive to v3.5.4 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2597\"\u003e\u003ccode\u003e[#2597](https://github.com/ast-grep/ast-grep/issues/2597)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi to v3.8.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2596\"\u003e\u003ccode\u003e[#2596](https://github.com/ast-grep/ast-grep/issues/2596)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.52.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2592\"\u003e\u003ccode\u003e[#2592](https://github.com/ast-grep/ast-grep/issues/2592)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap to v4.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2594\"\u003e\u003ccode\u003e[#2594](https://github.com/ast-grep/ast-grep/issues/2594)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update pyo3/maturin-action action to v1.51.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2510\"\u003e\u003ccode\u003e[#2510](https://github.com/ast-grep/ast-grep/issues/2510)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2568\"\u003e\u003ccode\u003e[#2568](https://github.com/ast-grep/ast-grep/issues/2568)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​napi-rs/cli\u003c/code\u003e to v3.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2583\"\u003e\u003ccode\u003e[#2583](https://github.com/ast-grep/ast-grep/issues/2583)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​ast-grep/napi\u003c/code\u003e to v0.42.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2580\"\u003e\u003ccode\u003e[#2580](https://github.com/ast-grep/ast-grep/issues/2580)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.59.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2581\"\u003e\u003ccode\u003e[#2581](https://github.com/ast-grep/ast-grep/issues/2581)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate toml_edit to v0.25.11 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2582\"\u003e\u003ccode\u003e[#2582](https://github.com/ast-grep/ast-grep/issues/2582)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.51.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2584\"\u003e\u003ccode\u003e[#2584](https://github.com/ast-grep/ast-grep/issues/2584)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency dprint to v0.54.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2585\"\u003e\u003ccode\u003e[#2585](https://github.com/ast-grep/ast-grep/issues/2585)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2586\"\u003e\u003ccode\u003e[#2586](https://github.com/ast-grep/ast-grep/issues/2586)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v24.12.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2579\"\u003e\u003ccode\u003e[#2579](https://github.com/ast-grep/ast-grep/issues/2579)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: enable npx install fallback but still keep postinstall \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/fbc5b9b67d7f7f4e86406a7fcf491cbfab327098\"\u003e\u003ccode\u003efbc5b9b\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump kotlin version \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/6f09a5b02dc95ab083b614b4d972059b9afe3a23\"\u003e\u003ccode\u003e6f09a5b\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: solve linting \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/945328aa3157370ce8fcc207358e29490d257fb6\"\u003e\u003ccode\u003e945328a\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/ast-grep/ast-grep/commit/25e6a90e1403af9e1d90574d1c704300fede18b5\"\u003e\u003ccode\u003e25e6a90\u003c/code\u003e\u003c/a\u003e 0.42.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/bbfad0e4a66169fe3b2294ca3976b970d2513e83\"\u003e\u003ccode\u003ebbfad0e\u003c/code\u003e\u003c/a\u003e chore(deps): update rust crate tokio to v1.52.3 (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2620\"\u003e#2620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/4ab320d3e8807ffe17a3c438e1b9c3e2c2b4fbaa\"\u003e\u003ccode\u003e4ab320d\u003c/code\u003e\u003c/a\u003e fix(deps): update rust-wasm-bindgen monorepo (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2623\"\u003e#2623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/fbc5b9b67d7f7f4e86406a7fcf491cbfab327098\"\u003e\u003ccode\u003efbc5b9b\u003c/code\u003e\u003c/a\u003e fix: enable npx install fallback but still keep postinstall\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/915d00a04ef543f988f07b63bcffbf34d6d64595\"\u003e\u003ccode\u003e915d00a\u003c/code\u003e\u003c/a\u003e chore(deps): update rust crate clap_complete to v4.6.4 (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2627\"\u003e#2627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/de07fef489051da5b0fe0c07f7abdd3a14a162f3\"\u003e\u003ccode\u003ede07fef\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v24.12.3 (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2624\"\u003e#2624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/6f09a5b02dc95ab083b614b4d972059b9afe3a23\"\u003e\u003ccode\u003e6f09a5b\u003c/code\u003e\u003c/a\u003e chore: bump kotlin version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/bab1336e48db1afd1a9d9d831480498a5701c3b9\"\u003e\u003ccode\u003ebab1336\u003c/code\u003e\u003c/a\u003e chore(deps): update rust crate tree-sitter-swift to v0.7.2 (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2619\"\u003e#2619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/4c35a206e2fdd725263fd742bdd9ee439256c42d\"\u003e\u003ccode\u003e4c35a20\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxlint to v1.63.0 (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2621\"\u003e#2621\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/333e1951554969524f57b248e30d6fb65ddd53c5\"\u003e\u003ccode\u003e333e195\u003c/code\u003e\u003c/a\u003e fix: replace postinstall script with binary resolution in ast-grep (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2595\"\u003e#2595\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ast-grep/ast-grep/compare/0.42.1...0.42.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.4 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/oxide-linux-x64-gnu'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu'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/1998...\n\n_Description has been truncated_","html_url":"https://github.com/JSB2010/jacobbarkin.com/pull/170","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/JSB2010%2Fjacobbarkin.com/issues/170","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/170/packages"},{"uuid":"4417694078","node_id":"PR_kwDOSK1JWc7aFrSQ","number":91,"state":"open","title":"chore(deps): bump the frontend-minor-patch group with 21 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T02:39:33.000Z","updated_at":"2026-05-11T02:40:30.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"frontend-minor-patch","update_count":21,"packages":[{"name":"@tailwindcss/vite","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"tailwind-merge","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"tailwindcss","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/node","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-android-arm64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-arm64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-x64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-freebsd-x64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm-gnueabihf","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-musl","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-musl","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-wasm32-wasi","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-arm64-msvc","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-x64-msvc","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"baseline-browser-mapping","old_version":"2.10.27","new_version":"2.10.29","repository_url":"https://github.com/web-platform-dx/baseline-browser-mapping"},{"name":"electron-to-chromium","old_version":"1.5.352","new_version":"1.5.353","repository_url":"https://github.com/Kilian/electron-to-chromium"},{"name":"enhanced-resolve","old_version":"5.21.1","new_version":"5.21.2","repository_url":"https://github.com/webpack/enhanced-resolve"},{"name":"get-east-asian-width","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/sindresorhus/get-east-asian-width"}],"path":null,"ecosystem":"npm"},"body":"Bumps the frontend-minor-patch group with 21 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.4` | `4.3.0` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/node](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-android-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/android-arm64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-darwin-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-arm64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-darwin-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-x64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-freebsd-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/freebsd-x64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm-gnueabihf](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm-gnueabihf) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-gnu) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-musl) | `4.2.4` | `4.3.0` |\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| [@tailwindcss/oxide-linux-x64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-musl) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-wasm32-wasi](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-win32-arm64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-arm64-msvc) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-win32-x64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-x64-msvc) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.4` | `4.3.0` |\n| [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) | `2.10.27` | `2.10.29` |\n| [electron-to-chromium](https://github.com/Kilian/electron-to-chromium) | `1.5.352` | `1.5.353` |\n| [enhanced-resolve](https://github.com/webpack/enhanced-resolve) | `5.21.1` | `5.21.2` |\n| [get-east-asian-width](https://github.com/sindresorhus/get-east-asian-width) | `1.5.0` | `1.6.0` |\n\nUpdates `@tailwindcss/vite` from 4.2.4 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\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/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\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/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\u003eSee full diff 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\u003cbr /\u003e\n\nUpdates `tailwind-merge` from 3.5.0 to 3.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dcastil/tailwind-merge/releases\"\u003etailwind-merge's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.0\u003c/h2\u003e\n\u003ch3\u003eNew Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Tailwind CSS v4.3 by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/677\"\u003edcastil/tailwind-merge#677\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epostfixLookupClassGroups\u003c/code\u003e option to config to support Tailwind utilities where a slash is part of the full class name, like named container queries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdd support for readonly array values by \u003ca href=\"https://github.com/unional\"\u003e\u003ccode\u003e@​unional\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/652\"\u003edcastil/tailwind-merge#652\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in README by \u003ca href=\"https://github.com/maurer2\"\u003e\u003ccode\u003e@​maurer2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/662\"\u003edcastil/tailwind-merge#662\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHarden internal CI pipeline security by omitting git checkout by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e, suggested by \u003ca href=\"https://github.com/kyletaylored\"\u003e\u003ccode\u003e@​kyletaylored\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\"\u003ehttps://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ehttps://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/brandonmcconnell\"\u003e\u003ccode\u003e@​brandonmcconnell\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/manavm1990\"\u003e\u003ccode\u003e@​manavm1990\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/langy\"\u003e\u003ccode\u003e@​langy\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roboflow\"\u003e\u003ccode\u003e@​roboflow\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/syntaxfm\"\u003e\u003ccode\u003e@​syntaxfm\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/getsentry\"\u003e\u003ccode\u003e@​getsentry\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/codecov\"\u003e\u003ccode\u003e@​codecov\u003c/code\u003e\u003c/a\u003e, a private sponsor, \u003ca href=\"https://github.com/block\"\u003e\u003ccode\u003e@​block\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/openclaw\"\u003e\u003ccode\u003e@​openclaw\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sourcegraph\"\u003e\u003ccode\u003e@​sourcegraph\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mike-healy\"\u003e\u003ccode\u003e@​mike-healy\u003c/code\u003e\u003c/a\u003e and more via \u003ca href=\"https://github.com/thnxdev\"\u003e\u003ccode\u003e@​thnxdev\u003c/code\u003e\u003c/a\u003e for sponsoring tailwind-merge! ❤️\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/dcastil/tailwind-merge/commit/d54f7e5713c653d0171971405344f7c6e44d418f\"\u003e\u003ccode\u003ed54f7e5\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/638871a67a0a124ac9275eda77cd08b03f2f045e\"\u003e\u003ccode\u003e638871a\u003c/code\u003e\u003c/a\u003e Update README to add info about Tailwind CSS v4.3 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/39fc7b5e915493e5eb3ddb1ca615f5b2eeff2540\"\u003e\u003ccode\u003e39fc7b5\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;v3.6.0\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/bd8390f6ca387f93c9e989fb3fb09924fb843445\"\u003e\u003ccode\u003ebd8390f\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/802877c6e31f9fb64c627e5e760729a16cd0a69b\"\u003e\u003ccode\u003e802877c\u003c/code\u003e\u003c/a\u003e add v3.6.0 changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/a35fedac7d1fc8756223da94290a83a32068d2ae\"\u003e\u003ccode\u003ea35feda\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/665\"\u003e#665\u003c/a\u003e from dcastil/renovate/rollup-plugin-babel-7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/940389cf89ed0da277ff5c01b98fd619687926e9\"\u003e\u003ccode\u003e940389c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/667\"\u003e#667\u003c/a\u003e from dcastil/renovate/release-drafter-release-drafter...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/005af6df08cfbe2adac7ca6cb5a7be02b9261fbd\"\u003e\u003ccode\u003e005af6d\u003c/code\u003e\u003c/a\u003e pin to specific version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/5816ced627ebcaefd497ad8e4202baf750dd545c\"\u003e\u003ccode\u003e5816ced\u003c/code\u003e\u003c/a\u003e implement breaking changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/17041e17c5b9c96fcb0f4758c718799cb3af14a6\"\u003e\u003ccode\u003e17041e1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/676\"\u003e#676\u003c/a\u003e from dcastil/dependabot/npm_and_yarn/babel/plugin-tra...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwindcss` from 4.2.4 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\"\u003etailwindcss'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss'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\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/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/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/59936c6cbb69eae114bc52d0a3c9315b18c70a94\"\u003e\u003ccode\u003e59936c6\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/90a2373620200bf7e04d1d228a0d0a1c506e532a\"\u003e\u003ccode\u003e90a2373\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e1ccf7f115732032d2b079073dcb0009baf82a0\"\u003e\u003ccode\u003e2e1ccf7\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/754e7512ca51db1f922dc67724cf85a0fde923a9\"\u003e\u003ccode\u003e754e751\u003c/code\u003e\u003c/a\u003e Use non-existing example in tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20021\"\u003e#20021\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/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/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/8c779899bbc94f9f642db47cafdd363dd094984a\"\u003e\u003ccode\u003e8c77989\u003c/code\u003e\u003c/a\u003e Ensure math operators are surrounded by whitespace in arbitrary values (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/b4db3b99d1bc6209a936df34914e0fc34b3e5095\"\u003e\u003ccode\u003eb4db3b9\u003c/code\u003e\u003c/a\u003e Add scrollbar-width and scrollbar-color utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19981\"\u003e#19981\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/08cad84bbe2002398655d7f981eae47379e07fc3\"\u003e\u003ccode\u003e08cad84\u003c/code\u003e\u003c/a\u003e Support \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e to support fallbac...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/tailwindcss\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/node` from 4.2.4 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/node'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/node'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\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/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-node/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-node/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4b5d6a594305b2914a018d52392e099468922430\"\u003e\u003ccode\u003e4b5d6a5\u003c/code\u003e\u003c/a\u003e Update enhanced-resolve 5.20.1 → 5.21.0 (minor) (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node/issues/19998\"\u003e#19998\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-node/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-android-arm64` from 4.2.4 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/oxide-android-arm64'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-android-arm64'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\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/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/crates/node/npm/android-arm64/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/crates/node/npm/android-arm64\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-darwin-arm64` from 4.2.4 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/oxide-darwin-arm64'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-darwin-arm64'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\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/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/cr...\n\n_Description has been truncated_\n\n\u003c!-- This is an auto-generated comment: release notes by coderabbit.ai --\u003e\n\n## Summary by CodeRabbit\n\n* **Chores**\n  * Updated Tailwind CSS and related tooling packages to latest versions for improved compatibility and performance.\n\n[![Review Change Stack](https://storage.googleapis.com/coderabbit_public_assets/review-stack-in-coderabbit-ui.svg)](https://app.coderabbit.ai/change-stack/trade/mark/pull/91)\n\n\u003c!-- end of auto-generated comment: release notes by coderabbit.ai --\u003e","html_url":"https://github.com/trade/mark/pull/91","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/trade%2Fmark/issues/91","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/91/packages"},{"uuid":"4417146637","node_id":"PR_kwDOMzbQP87aEBDh","number":422,"state":"closed","title":"Bump the packages group with 39 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":["poad"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-10T23:32:54.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-10T23:32:43.000Z","updated_at":"2026-05-10T23:32:56.000Z","time_to_close":11,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"packages","update_count":39,"packages":[{"name":"@vercel/functions","old_version":"3.5.0","new_version":"3.5.1","repository_url":"https://github.com/vercel/vercel"},{"name":"@eslint/compat","old_version":"2.0.5","new_version":"2.1.0","repository_url":"https://github.com/eslint/rewrite"},{"name":"@tailwindcss/postcss","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":"vercel","old_version":"53.2.0","new_version":"53.3.2","repository_url":"https://github.com/vercel/vercel"},{"name":"@tailwindcss/node","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-android-arm64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-arm64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-x64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-freebsd-x64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm-gnueabihf","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-musl","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-musl","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-wasm32-wasi","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-arm64-msvc","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-x64-msvc","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@vercel/backends","old_version":"0.3.0","new_version":"0.4.1","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/build-utils","old_version":"13.21.0","new_version":"13.22.0","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/cervel","old_version":"0.1.0","new_version":"0.1.2","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/elysia","old_version":"0.1.73","new_version":"0.1.75","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/express","old_version":"0.1.83","new_version":"0.1.85","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/fastify","old_version":"0.1.76","new_version":"0.1.78","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/gatsby-plugin-vercel-builder","old_version":"2.2.0","new_version":"2.2.2","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/h3","old_version":"0.1.82","new_version":"0.1.84","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/hono","old_version":"0.2.76","new_version":"0.2.78","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/koa","old_version":"0.1.56","new_version":"0.1.58","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/nestjs","old_version":"0.2.77","new_version":"0.2.79","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/node","old_version":"5.7.15","new_version":"5.7.17","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/python","old_version":"6.38.0","new_version":"6.39.0","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/static-build","old_version":"2.9.22","new_version":"2.9.24","repository_url":"https://github.com/vercel/vercel"},{"name":"baseline-browser-mapping","old_version":"2.10.27","new_version":"2.10.29","repository_url":"https://github.com/web-platform-dx/baseline-browser-mapping"},{"name":"electron-to-chromium","old_version":"1.5.352","new_version":"1.5.353","repository_url":"https://github.com/Kilian/electron-to-chromium"},{"name":"enhanced-resolve","old_version":"5.21.0","new_version":"5.21.2","repository_url":"https://github.com/webpack/enhanced-resolve"},{"name":"nf3","old_version":"0.3.16","new_version":"0.3.17","repository_url":"https://github.com/unjs/nf3"},{"name":"socks","old_version":"2.8.8","new_version":"2.8.9","repository_url":"https://github.com/JoshGlazebrook/socks"},{"name":"tar","old_version":"7.5.14","new_version":"7.5.15","repository_url":"https://github.com/isaacs/node-tar"}],"path":null,"ecosystem":"npm"},"body":"Bumps the packages group with 39 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@vercel/functions](https://github.com/vercel/vercel/tree/HEAD/packages/functions) | `3.5.0` | `3.5.1` |\n| [@eslint/compat](https://github.com/eslint/rewrite/tree/HEAD/packages/compat) | `2.0.5` | `2.1.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.4` | `4.3.0` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.4` | `4.3.0` |\n| [vercel](https://github.com/vercel/vercel/tree/HEAD/packages/cli) | `53.2.0` | `53.3.2` |\n| [@tailwindcss/node](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-android-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/android-arm64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-darwin-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-arm64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-darwin-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-x64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-freebsd-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/freebsd-x64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm-gnueabihf](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm-gnueabihf) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-gnu) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-musl) | `4.2.4` | `4.3.0` |\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| [@tailwindcss/oxide-linux-x64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-musl) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-wasm32-wasi](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-win32-arm64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-arm64-msvc) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-win32-x64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-x64-msvc) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.4` | `4.3.0` |\n| [@vercel/backends](https://github.com/vercel/vercel/tree/HEAD/packages/backends) | `0.3.0` | `0.4.1` |\n| [@vercel/build-utils](https://github.com/vercel/vercel/tree/HEAD/packages/now-build-utils) | `13.21.0` | `13.22.0` |\n| [@vercel/cervel](https://github.com/vercel/vercel/tree/HEAD/packages/cervel) | `0.1.0` | `0.1.2` |\n| [@vercel/elysia](https://github.com/vercel/vercel/tree/HEAD/packages/elysia) | `0.1.73` | `0.1.75` |\n| [@vercel/express](https://github.com/vercel/vercel/tree/HEAD/packages/express) | `0.1.83` | `0.1.85` |\n| [@vercel/fastify](https://github.com/vercel/vercel/tree/HEAD/packages/fastify) | `0.1.76` | `0.1.78` |\n| [@vercel/gatsby-plugin-vercel-builder](https://github.com/vercel/vercel/tree/HEAD/packages/gatsby-plugin-vercel-builder) | `2.2.0` | `2.2.2` |\n| [@vercel/h3](https://github.com/vercel/vercel/tree/HEAD/packages/h3) | `0.1.82` | `0.1.84` |\n| [@vercel/hono](https://github.com/vercel/vercel/tree/HEAD/packages/hono) | `0.2.76` | `0.2.78` |\n| [@vercel/koa](https://github.com/vercel/vercel/tree/HEAD/packages/koa) | `0.1.56` | `0.1.58` |\n| [@vercel/nestjs](https://github.com/vercel/vercel/tree/HEAD/packages/nestjs) | `0.2.77` | `0.2.79` |\n| [@vercel/node](https://github.com/vercel/vercel/tree/HEAD/packages/node) | `5.7.15` | `5.7.17` |\n| [@vercel/python](https://github.com/vercel/vercel/tree/HEAD/packages/python) | `6.38.0` | `6.39.0` |\n| [@vercel/static-build](https://github.com/vercel/vercel/tree/HEAD/packages/static-build) | `2.9.22` | `2.9.24` |\n| [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) | `2.10.27` | `2.10.29` |\n| [electron-to-chromium](https://github.com/Kilian/electron-to-chromium) | `1.5.352` | `1.5.353` |\n| [enhanced-resolve](https://github.com/webpack/enhanced-resolve) | `5.21.0` | `5.21.2` |\n| [nf3](https://github.com/unjs/nf3) | `0.3.16` | `0.3.17` |\n| [socks](https://github.com/JoshGlazebrook/socks) | `2.8.8` | `2.8.9` |\n| [tar](https://github.com/isaacs/node-tar) | `7.5.14` | `7.5.15` |\n\nUpdates `@vercel/functions` from 3.5.0 to 3.5.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/vercel/releases\"\u003e@​vercel/functions's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​vercel/functions\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.5.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eae20217: Upgrade to TypeScript 5.9\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [ae20217]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/oidc\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.1\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/vercel/vercel/blob/main/packages/functions/CHANGELOG.md\"\u003e@​vercel/functions's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.5.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eae20217: Upgrade to TypeScript 5.9\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [ae20217]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/oidc\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.1\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/vercel/commit/8a127cee8a0ae16f4cbe0c4b596cdffe089bdd84\"\u003e\u003ccode\u003e8a127ce\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/functions/issues/16235\"\u003e#16235\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/ae202176b0e66900387bbab0d167a1dfad401449\"\u003e\u003ccode\u003eae20217\u003c/code\u003e\u003c/a\u003e Upgrade a few straddlers to TypeScript 5.9 (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/functions/issues/16253\"\u003e#16253\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vercel/vercel/commits/@vercel/functions@3.5.1/packages/functions\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/compat` from 2.0.5 to 2.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/rewrite/releases\"\u003e@​eslint/compat's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecompat: v2.1.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/compat-v2.0.5...compat-v2.1.0\"\u003e2.1.0\u003c/a\u003e (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to config-helpers (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/430\"\u003e#430\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/9b513529022834e72cccfa278ec7ba6e7f4e10c5\"\u003e9b51352\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emigrate-config: v2.1.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/migrate-config-v2.0.7...migrate-config-v2.1.0\"\u003e2.1.0\u003c/a\u003e (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to config-helpers (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/430\"\u003e#430\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/9b513529022834e72cccfa278ec7ba6e7f4e10c5\"\u003e9b51352\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe following workspace dependencies were updated\n\u003cul\u003e\n\u003cli\u003edependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e bumped from ^0.5.5 to ^0.6.0\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\u003emigrate-config: v2.0.7\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/migrate-config-v2.0.6...migrate-config-v2.0.7\"\u003e2.0.7\u003c/a\u003e (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate \u003ccode\u003eespree\u003c/code\u003e to the latest (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/437\"\u003e#437\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/a8ff72f6f473ce87df4156d3eb9b6e4992084337\"\u003ea8ff72f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emigrate-config: v2.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/migrate-config-v2.0.5...migrate-config-v2.0.6\"\u003e2.0.6\u003c/a\u003e (2026-04-08)\u003c/h2\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe following workspace dependencies were updated\n\u003cul\u003e\n\u003cli\u003edependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/compat\u003c/code\u003e bumped from ^2.0.4 to ^2.0.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edevDependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/core\u003c/code\u003e bumped from ^1.2.0 to ^1.2.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/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/eslint/rewrite/blob/main/packages/compat/CHANGELOG.md\"\u003e@​eslint/compat's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/compat-v2.0.5...compat-v2.1.0\"\u003e2.1.0\u003c/a\u003e (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to config-helpers (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/430\"\u003e#430\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/9b513529022834e72cccfa278ec7ba6e7f4e10c5\"\u003e9b51352\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/eslint/rewrite/commit/b8949534bf7f498d941007f3adc2740157965b49\"\u003e\u003ccode\u003eb894953\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://github.com/eslint/rewrite/tree/HEAD/packages/compat/issues/446\"\u003e#446\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/334038d4f068e947bc366e7f987423414ad2773a\"\u003e\u003ccode\u003e334038d\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/9b513529022834e72cccfa278ec7ba6e7f4e10c5\"\u003e\u003ccode\u003e9b51352\u003c/code\u003e\u003c/a\u003e feat: Add new \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to config-helpers (\u003ca href=\"https://github.com/eslint/rewrite/tree/HEAD/packages/compat/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/70b69970a2e0d9bdba8c2e9c19beb6f5b35d5db0\"\u003e\u003ccode\u003e70b6997\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/35b6b944eb63aa5a82356121a7a3a2ec24393ace\"\u003e\u003ccode\u003e35b6b94\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://github.com/eslint/rewrite/tree/HEAD/packages/compat/issues/417\"\u003e#417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/7807d7107caa44ff0febbd4b2525911ddcd8027b\"\u003e\u003ccode\u003e7807d71\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/57001eafe026f667d46fea4bd5e59a5a50717c2c\"\u003e\u003ccode\u003e57001ea\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/0b621334efd3bb68e2bba3f1649046d1a720f0e6\"\u003e\u003ccode\u003e0b62133\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/rewrite/commits/compat-v2.1.0/packages/compat\"\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.4 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\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/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\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/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\u003eSee full diff 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\u003cbr /\u003e\n\nUpdates `tailwindcss` from 4.2.4 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\"\u003etailwindcss'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss'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\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/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/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/59936c6cbb69eae114bc52d0a3c9315b18c70a94\"\u003e\u003ccode\u003e59936c6\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/90a2373620200bf7e04d1d228a0d0a1c506e532a\"\u003e\u003ccode\u003e90a2373\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e1ccf7f115732032d2b079073dcb0009baf82a0\"\u003e\u003ccode\u003e2e1ccf7\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/754e7512ca51db1f922dc67724cf85a0fde923a9\"\u003e\u003ccode\u003e754e751\u003c/code\u003e\u003c/a\u003e Use non-existing example in tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20021\"\u003e#20021\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/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/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/8c779899bbc94f9f642db47cafdd363dd094984a\"\u003e\u003ccode\u003e8c77989\u003c/code\u003e\u003c/a\u003e Ensure math operators are surrounded by whitespace in arbitrary values (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/b4db3b99d1bc6209a936df34914e0fc34b3e5095\"\u003e\u003ccode\u003eb4db3b9\u003c/code\u003e\u003c/a\u003e Add scrollbar-width and scrollbar-color utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19981\"\u003e#19981\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/08cad84bbe2002398655d7f981eae47379e07fc3\"\u003e\u003ccode\u003e08cad84\u003c/code\u003e\u003c/a\u003e Support \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e to support fallbac...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/tailwindcss\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vercel` from 53.2.0 to 53.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/vercel/releases\"\u003evercel's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003evercel@53.3.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [f0d7d32]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/build-utils\u003c/code\u003e\u003ca href=\"https://github.com/13\"\u003e\u003ccode\u003e@​13\u003c/code\u003e\u003c/a\u003e.22.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/node\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.7.17\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/backends\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.4.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/elysia\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.75\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/express\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.85\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/fastify\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.78\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/go\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.6.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/h3\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.84\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/hono\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.78\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/hydrogen\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.3.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/koa\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.58\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/nestjs\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.79\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/next\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.17.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/python\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.39.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/redwood\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.4.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/remix-builder\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.8.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/ruby\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.3.2\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/rust\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.2.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/static-build\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.9.24\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003evercel@53.3.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [82edff0]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/cli-config\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003evercel@53.3.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edbfcc04: \u003ccode\u003evercel connex list\u003c/code\u003e now defaults to clients linked to the current project. When no project is linked, it falls back to listing every Connex client in the team (same as \u003ccode\u003e--all-projects\u003c/code\u003e). Use \u003ccode\u003e--all-projects\u003c/code\u003e to force the team-wide view; the table includes a \u003ccode\u003eProjects\u003c/code\u003e column with the linked project names per client (with a \u003ccode\u003e+ more\u003c/code\u003e suffix when truncated).\u003c/li\u003e\n\u003cli\u003e3b368bd: Add \u003ccode\u003e--format=json\u003c/code\u003e support to \u003ccode\u003evercel project token\u003c/code\u003e, direct token output to stdout instead of stderr.\u003c/li\u003e\n\u003cli\u003e34f595a: Extract CLI global config and auth config helpers into new \u003ccode\u003e@vercel/cli-config\u003c/code\u003e, use \u003ccode\u003e@effect/schema\u003c/code\u003e for config validation.\u003c/li\u003e\n\u003cli\u003eb4ada64: Implement scheduled jobs for JS/TS.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e1dae59c: Allow \u003ccode\u003evc logs \u0026lt;deployment-url\u0026gt;\u003c/code\u003e to resolve the project from the deployment instead of requiring a linked local project, and include the current scope in related lookup errors.\u003c/li\u003e\n\u003cli\u003e7e64cc2: Show a clearer error instead of querying logs for deployments that never reached Ready.\u003c/li\u003e\n\u003cli\u003e2dac1cb: Use Git repository and root directory matches before folder-name matches when linking projects.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [e53dd86]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [ae20217]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [34f595a]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [b4ada64]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [94c29b8]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/build-utils\u003c/code\u003e\u003ca href=\"https://github.com/13\"\u003e\u003ccode\u003e@​13\u003c/code\u003e\u003c/a\u003e.22.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/backends\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.4.0\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/vercel/vercel/blob/main/packages/cli/CHANGELOG.md\"\u003evercel's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e53.3.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [f0d7d32]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/build-utils\u003c/code\u003e\u003ca href=\"https://github.com/13\"\u003e\u003ccode\u003e@​13\u003c/code\u003e\u003c/a\u003e.22.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/node\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.7.17\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/backends\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.4.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/elysia\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.75\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/express\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.85\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/fastify\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.78\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/go\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.6.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/h3\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.84\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/hono\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.78\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/hydrogen\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.3.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/koa\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.58\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/nestjs\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.79\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/next\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.17.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/python\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.39.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/redwood\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.4.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/remix-builder\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.8.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/ruby\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.3.2\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/rust\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.2.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/static-build\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.9.24\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e53.3.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [82edff0]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/cli-config\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e53.3.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edbfcc04: \u003ccode\u003evercel connex list\u003c/code\u003e now defaults to clients linked to the current project. When no project is linked, it falls back to listing every Connex client in the team (same as \u003ccode\u003e--all-projects\u003c/code\u003e). Use \u003ccode\u003e--all-projects\u003c/code\u003e to force the team-wide view; the table includes a \u003ccode\u003eProjects\u003c/code\u003e column with the linked project names per client (with a \u003ccode\u003e+ more\u003c/code\u003e suffix when truncated).\u003c/li\u003e\n\u003cli\u003e3b368bd: Add \u003ccode\u003e--format=json\u003c/code\u003e support to \u003ccode\u003evercel project token\u003c/code\u003e, direct token output to stdout instead of stderr.\u003c/li\u003e\n\u003cli\u003e34f595a: Extract CLI global config and auth config helpers into new \u003ccode\u003e@vercel/cli-config\u003c/code\u003e, use \u003ccode\u003e@effect/schema\u003c/code\u003e for config validation.\u003c/li\u003e\n\u003cli\u003eb4ada64: Implement scheduled jobs for JS/TS.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e1dae59c: Allow \u003ccode\u003evc logs \u0026lt;deployment-url\u0026gt;\u003c/code\u003e to resolve the project from the deployment instead of requiring a linked local project, and include the current scope in related lookup errors.\u003c/li\u003e\n\u003cli\u003e7e64cc2: Show a clearer error instead of querying logs for deployments that never reached Ready.\u003c/li\u003e\n\u003cli\u003e2dac1cb: Use Git repository and root directory matches before folder-name matches when linking projects.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [e53dd86]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [ae20217]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [34f595a]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [b4ada64]\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/vercel/commit/5b4ece0b528756012c21da9086ac8197eb134cfa\"\u003e\u003ccode\u003e5b4ece0\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16275\"\u003e#16275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/68248c7be5333156de449107c643ed6100937b27\"\u003e\u003ccode\u003e68248c7\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16272\"\u003e#16272\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/8a127cee8a0ae16f4cbe0c4b596cdffe089bdd84\"\u003e\u003ccode\u003e8a127ce\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16235\"\u003e#16235\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/c20fa112463b12a5b1956415603b01759f856e50\"\u003e\u003ccode\u003ec20fa11\u003c/code\u003e\u003c/a\u003e test(cli): avoid README in cwd deploy fixture (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16265\"\u003e#16265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/b4ada643daebba9c5dec3a5d6fcee6953e778f8e\"\u003e\u003ccode\u003eb4ada64\u003c/code\u003e\u003c/a\u003e [services] Add static schedule cron services for js/ts. (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16158\"\u003e#16158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/7e64cc27f58912ed5313617e502aa6db84ea0a1c\"\u003e\u003ccode\u003e7e64cc2\u003c/code\u003e\u003c/a\u003e cli/logs: Handle non-live deployments (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16247\"\u003e#16247\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/2dac1cb26220f4af4deab61830443ae199791942\"\u003e\u003ccode\u003e2dac1cb\u003c/code\u003e\u003c/a\u003e Use repo link behavior when possible during \u003ccode\u003evc link\u003c/code\u003e (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16238\"\u003e#16238\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/dbfcc04037e05cb1d3d1d98b9556aad0b36958de\"\u003e\u003ccode\u003edbfcc04\u003c/code\u003e\u003c/a\u003e [cli] connex: Scope list clients to current project by default; add --all (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/1dae59c918f44fadc834ede3c17b26f7727e7a93\"\u003e\u003ccode\u003e1dae59c\u003c/code\u003e\u003c/a\u003e cli/logs: Resolve deployment targets without linked projects (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16246\"\u003e#16246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/3b368bda6871258606d6b92696bffc3bc11605cc\"\u003e\u003ccode\u003e3b368bd\u003c/code\u003e\u003c/a\u003e cli/project/token: Add JSON output mode, print to stdout (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16156\"\u003e#16156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/vercel/commits/vercel@53.3.2/packages/cli\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/node` from 4.2.4 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/node'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/node'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\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/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-node/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-node/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4b5d6a594305b2914a018d52392e099468922430\"\u003e\u003ccode\u003e4b5d6a5\u003c/code\u003e\u003c/a\u003e Update enhanced-resolve 5.20.1 → 5.21.0 (minor) (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node/issues/19998\"\u003e#19998\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-node/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-android-arm64` from 4.2.4 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/oxide-android-arm64'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-android-arm64'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...\n\n_Description has been truncated_","html_url":"https://github.com/poad/github-rest-api-executor/pull/422","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/poad%2Fgithub-rest-api-executor/issues/422","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/422/packages"},{"uuid":"4380535275","node_id":"PR_kwDORpBe-s7YNl7s","number":29,"state":"open","title":"build(deps): bump @tailwindcss/oxide-linux-x64-gnu from 4.2.2 to 4.2.4 in /apps/frontend","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-05T00:09:23.000Z","updated_at":"2026-05-05T00:12:51.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":"/apps/frontend","ecosystem":"npm"},"body":"Bumps [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) from 4.2.2 to 4.2.4.\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/oxide-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.2.2\u0026new-version=4.2.4)](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/alvinstream-ila/dompet-kita/pull/29","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/alvinstream-ila%2Fdompet-kita/issues/29","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/29/packages"},{"uuid":"4377156179","node_id":"PR_kwDOPag1W87YCbNW","number":84,"state":"closed","title":"chore(deps): bump the js-minor-patch group across 1 directory with 19 updates","user":"dependabot[bot]","labels":["deps","js"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-11T17:39:50.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T13:59:14.000Z","updated_at":"2026-05-11T17:39:52.000Z","time_to_close":618036,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"js-minor-patch","update_count":19,"packages":[{"name":"@inertiajs/vue3","old_version":"3.0.1","new_version":"3.0.3","repository_url":"https://github.com/inertiajs/inertia"},{"name":"@tailwindcss/vite","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@vitejs/plugin-vue","old_version":"6.0.5","new_version":"6.0.6","repository_url":"https://github.com/vitejs/vite-plugin-vue"},{"name":"@vueuse/core","old_version":"14.2.1","new_version":"14.3.0","repository_url":"https://github.com/vueuse/vueuse"},{"name":"laravel-vite-plugin","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/laravel/vite-plugin"},{"name":"reka-ui","old_version":"2.9.2","new_version":"2.9.6","repository_url":"https://github.com/unovue/reka-ui"},{"name":"tailwindcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"typescript","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"vite","old_version":"8.0.3","new_version":"8.0.10","repository_url":"https://github.com/vitejs/vite"},{"name":"vue","old_version":"3.5.31","new_version":"3.5.33","repository_url":"https://github.com/vuejs/core"},{"name":"@types/node","old_version":"25.5.0","new_version":"25.6.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"eslint","old_version":"10.1.0","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-vue","old_version":"10.8.0","new_version":"10.9.0","repository_url":"https://github.com/vuejs/eslint-plugin-vue"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"prettier-plugin-tailwindcss","old_version":"0.7.2","new_version":"0.8.0","repository_url":"https://github.com/tailwindlabs/prettier-plugin-tailwindcss"},{"name":"typescript-eslint","old_version":"8.58.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"vue-tsc","old_version":"3.2.6","new_version":"3.2.8","repository_url":"https://github.com/vuejs/language-tools"},{"name":"@rollup/rollup-linux-x64-gnu","old_version":"4.60.1","new_version":"4.60.2","repository_url":"https://github.com/rollup/rollup"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the js-minor-patch group with 19 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@inertiajs/vue3](https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3) | `3.0.1` | `3.0.3` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.2` | `4.2.4` |\n| [@vitejs/plugin-vue](https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue) | `6.0.5` | `6.0.6` |\n| [@vueuse/core](https://github.com/vueuse/vueuse/tree/HEAD/packages/core) | `14.2.1` | `14.3.0` |\n| [laravel-vite-plugin](https://github.com/laravel/vite-plugin) | `3.0.0` | `3.1.0` |\n| [reka-ui](https://github.com/unovue/reka-ui) | `2.9.2` | `2.9.6` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.2` | `4.2.4` |\n| [typescript](https://github.com/microsoft/TypeScript) | `6.0.2` | `6.0.3` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.3` | `8.0.10` |\n| [vue](https://github.com/vuejs/core) | `3.5.31` | `3.5.33` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.5.0` | `25.6.0` |\n| [eslint](https://github.com/eslint/eslint) | `10.1.0` | `10.3.0` |\n| [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) | `10.8.0` | `10.9.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) | `0.7.2` | `0.8.0` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.58.0` | `8.59.1` |\n| [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc) | `3.2.6` | `3.2.8` |\n| [@rollup/rollup-linux-x64-gnu](https://github.com/rollup/rollup) | `4.60.1` | `4.60.2` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.2` | `4.2.4` |\n\n\nUpdates `@inertiajs/vue3` from 3.0.1 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/inertiajs/inertia/releases\"\u003e@​inertiajs/vue3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[3.x] Bump Vite and Vitest by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3046\"\u003einertiajs/inertia#3046\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Update TSConfig and bump CI actions by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3047\"\u003einertiajs/inertia#3047\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Infer form data keys in \u003ccode\u003eresetOnSuccess\u003c/code\u003e and \u003ccode\u003eresetOnError\u003c/code\u003e by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3048\"\u003einertiajs/inertia#3048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fix layout props callback misclassifying function-valued props as named layouts by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3049\"\u003einertiajs/inertia#3049\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fix flash event not firing when response contains errors by \u003ca href=\"https://github.com/skryukov\"\u003e\u003ccode\u003e@​skryukov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3038\"\u003einertiajs/inertia#3038\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fire flash event after full reload by \u003ca href=\"https://github.com/skryukov\"\u003e\u003ccode\u003e@​skryukov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3041\"\u003einertiajs/inertia#3041\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Improve Playwright CI cache by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3051\"\u003einertiajs/inertia#3051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Add \u003ccode\u003eonHttpException\u003c/code\u003e, \u003ccode\u003eonNetworkError\u003c/code\u003e, and response to \u003ccode\u003eonSuccess\u003c/code\u003e in \u003ccode\u003euseHttp\u003c/code\u003e by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3050\"\u003einertiajs/inertia#3050\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/inertiajs/inertia/compare/v3.0.2...v3.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev3.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[3.x] Populate \u003ccode\u003epercentage\u003c/code\u003e in upload progress events by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3030\"\u003einertiajs/inertia#3030\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Add test for optional scroll props by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3032\"\u003einertiajs/inertia#3032\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Warm up lazy-loaded page dependencies in Vite plugin by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3035\"\u003einertiajs/inertia#3035\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Harden CI workflows and fix dependency vulnerabilities by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3031\"\u003einertiajs/inertia#3031\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.1...v3.0.2\"\u003ehttps://github.com/inertiajs/inertia/compare/v3.0.1...v3.0.2\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/inertiajs/inertia/blob/3.x/CHANGELOG.md\"\u003e@​inertiajs/vue3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.2...v3.0.3\"\u003ev3.0.3\u003c/a\u003e - 2026-04-07\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[3.x] Bump Vite and Vitest by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3046\"\u003einertiajs/inertia#3046\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Update TSConfig and bump CI actions by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3047\"\u003einertiajs/inertia#3047\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Infer form data keys in \u003ccode\u003eresetOnSuccess\u003c/code\u003e and \u003ccode\u003eresetOnError\u003c/code\u003e by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3048\"\u003einertiajs/inertia#3048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fix layout props callback misclassifying function-valued props as named layouts by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3049\"\u003einertiajs/inertia#3049\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fix flash event not firing when response contains errors by \u003ca href=\"https://github.com/skryukov\"\u003e\u003ccode\u003e@​skryukov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3038\"\u003einertiajs/inertia#3038\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fire flash event after full reload by \u003ca href=\"https://github.com/skryukov\"\u003e\u003ccode\u003e@​skryukov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3041\"\u003einertiajs/inertia#3041\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Improve Playwright CI cache by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3051\"\u003einertiajs/inertia#3051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Add \u003ccode\u003eonHttpException\u003c/code\u003e, \u003ccode\u003eonNetworkError\u003c/code\u003e, and response to \u003ccode\u003eonSuccess\u003c/code\u003e in \u003ccode\u003euseHttp\u003c/code\u003e by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3050\"\u003einertiajs/inertia#3050\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/inertiajs/inertia/compare/v3.0.2...v3.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.1...v3.0.2\"\u003ev3.0.2\u003c/a\u003e - 2026-04-02\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[3.x] Populate \u003ccode\u003epercentage\u003c/code\u003e in upload progress events by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3030\"\u003einertiajs/inertia#3030\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Add test for optional scroll props by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3032\"\u003einertiajs/inertia#3032\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Warm up lazy-loaded page dependencies in Vite plugin by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3035\"\u003einertiajs/inertia#3035\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Harden CI workflows and fix dependency vulnerabilities by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3031\"\u003einertiajs/inertia#3031\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.1...v3.0.2\"\u003ehttps://github.com/inertiajs/inertia/compare/v3.0.1...v3.0.2\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/inertiajs/inertia/commit/66241d2e314154b87cabe010748708fa5c7f3a9d\"\u003e\u003ccode\u003e66241d2\u003c/code\u003e\u003c/a\u003e v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/a7a499eb430516144c49293f3742647ff5764598\"\u003e\u003ccode\u003ea7a499e\u003c/code\u003e\u003c/a\u003e Add onHttpException, onNetworkError, and response to onSuccess in useHttp (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/f757d498ffae352bdba451318b3754de3df793ec\"\u003e\u003ccode\u003ef757d49\u003c/code\u003e\u003c/a\u003e Fix flash event not firing when response contains errors (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3038\"\u003e#3038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/2fe7751d6e79c4db8e5d2267cee84df88a6d294b\"\u003e\u003ccode\u003e2fe7751\u003c/code\u003e\u003c/a\u003e [3.x] Fix layout props callback misclassifying function-valued props as named...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/ffeef383f4d5a2e29c109367d85061ecca112f09\"\u003e\u003ccode\u003effeef38\u003c/code\u003e\u003c/a\u003e [3.x] Infer form data keys in \u003ccode\u003eresetOnSuccess\u003c/code\u003e and \u003ccode\u003eresetOnError\u003c/code\u003e (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3048\"\u003e#3048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/5083325d2cadcb2d0b1b484f7aae970311109a1f\"\u003e\u003ccode\u003e5083325\u003c/code\u003e\u003c/a\u003e [3.x] Update TSConfig and bump CI actions (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3047\"\u003e#3047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/0d0d99fa9b401da16252bd9a9963414f1d55ef9b\"\u003e\u003ccode\u003e0d0d99f\u003c/code\u003e\u003c/a\u003e [3.x] Bump Vite and Vitest (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3046\"\u003e#3046\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/740ae71fd656ff63613e230d9ed75eaa2801fb0e\"\u003e\u003ccode\u003e740ae71\u003c/code\u003e\u003c/a\u003e v3.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/aeac7eb8cc3388c4d5e1b893277bf58c10575484\"\u003e\u003ccode\u003eaeac7eb\u003c/code\u003e\u003c/a\u003e Added test for optional infinite scroll (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3032\"\u003e#3032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/inertiajs/inertia/commits/v3.0.3/packages/vue3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/vite` from 4.2.2 to 4.2.4\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.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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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.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\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/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 `@vitejs/plugin-vue` from 6.0.5 to 6.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitejs/vite-plugin-vue/releases\"\u003e@​vitejs/plugin-vue's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eplugin-vue@6.0.6\u003c/h2\u003e\n\u003cp\u003ePlease refer to \u003ca href=\"https://github.com/vitejs/vite-plugin-vue/blob/plugin-vue@6.0.6/packages/plugin-vue/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-plugin-vue/blob/main/packages/plugin-vue/CHANGELOG.md\"\u003e@​vitejs/plugin-vue'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-plugin-vue/compare/plugin-vue@6.0.5...plugin-vue@6.0.6\"\u003e6.0.6\u003c/a\u003e (2026-04-13)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eplugin-vue:\u003c/strong\u003e propagate multiRoot for template-only vapor components (\u003ca href=\"https://redirect.github.com/vitejs/vite-plugin-vue/issues/745\"\u003e#745\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/9e07ae94d0ca2e40cf0c2aac6a3d355a445a5e2d\"\u003e9e07ae9\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-plugin-vue/issues/738\"\u003e#738\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/050c9962660e7bb189fe8e03f0fa4cbd0b5ba766\"\u003e050c996\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 dependency rollup to ^4.59.0 (\u003ca href=\"https://redirect.github.com/vitejs/vite-plugin-vue/issues/749\"\u003e#749\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/a0e1ef83bd841c22c3fddc62189b545ec7c71729\"\u003ea0e1ef8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove unused deps (\u003ca href=\"https://redirect.github.com/vitejs/vite-plugin-vue/issues/760\"\u003e#760\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/6d834d82614ec76eb7618a2b015b6e8b0664f096\"\u003e6d834d8\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/vitejs/vite-plugin-vue/commit/51dbf4b494ef3e8b87febdb285d3c15b8a9c5490\"\u003e\u003ccode\u003e51dbf4b\u003c/code\u003e\u003c/a\u003e release: plugin-vue@6.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/9e07ae94d0ca2e40cf0c2aac6a3d355a445a5e2d\"\u003e\u003ccode\u003e9e07ae9\u003c/code\u003e\u003c/a\u003e feat(plugin-vue): propagate multiRoot for template-only vapor components (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue/issues/745\"\u003e#745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/050c9962660e7bb189fe8e03f0fa4cbd0b5ba766\"\u003e\u003ccode\u003e050c996\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue/issues/738\"\u003e#738\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/6d834d82614ec76eb7618a2b015b6e8b0664f096\"\u003e\u003ccode\u003e6d834d8\u003c/code\u003e\u003c/a\u003e chore: remove unused deps (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue/issues/760\"\u003e#760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/a0e1ef83bd841c22c3fddc62189b545ec7c71729\"\u003e\u003ccode\u003ea0e1ef8\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency rollup to ^4.59.0 (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue/issues/749\"\u003e#749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commits/plugin-vue@6.0.6/packages/plugin-vue\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@vueuse/core` from 14.2.1 to 14.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vueuse/vueuse/releases\"\u003e@​vueuse/core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev14.3.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpose pointer event onLongPress  -  by \u003ca href=\"https://github.com/mrcwbr\"\u003e\u003ccode\u003e@​mrcwbr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5295\"\u003evueuse/vueuse#5295\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/b1688bd2\"\u003e\u003c!-- raw HTML omitted --\u003e(b1688)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecreateInjectionState\u003c/strong\u003e: Non-undefined return when default specified  -  by \u003ca href=\"https://github.com/Laupetin\"\u003e\u003ccode\u003e@​Laupetin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5306\"\u003evueuse/vueuse#5306\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/b0c51c27\"\u003e\u003c!-- raw HTML omitted --\u003e(b0c51)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecreateReusableTemplate\u003c/strong\u003e: Add support for specifying component names  -  by \u003ca href=\"https://github.com/wbolster\"\u003e\u003ccode\u003e@​wbolster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5300\"\u003evueuse/vueuse#5300\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/ea29d5cb\"\u003e\u003c!-- raw HTML omitted --\u003e(ea29d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003enuxt\u003c/strong\u003e: Add composable variants to auto imports  -  by \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5285\"\u003evueuse/vueuse#5285\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/ac2ef95d\"\u003e\u003c!-- raw HTML omitted --\u003e(ac2ef)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseElementVisibility\u003c/strong\u003e: Add \u003ccode\u003econtrols\u003c/code\u003e option  -  by \u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5191\"\u003evueuse/vueuse#5191\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/0cb03d74\"\u003e\u003c!-- raw HTML omitted --\u003e(0cb03)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseTextareaAutosize\u003c/strong\u003e: Add optional \u003ccode\u003emaxHeight\u003c/code\u003e to limit autosize growth  -  by \u003ca href=\"https://github.com/palamarchukser\"\u003e\u003ccode\u003e@​palamarchukser\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/antfu\"\u003e\u003ccode\u003e@​antfu\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/9romise\"\u003e\u003ccode\u003e@​9romise\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5324\"\u003evueuse/vueuse#5324\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/1a3e5721\"\u003e\u003c!-- raw HTML omitted --\u003e(1a3e5)\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\u003eAdd explicit \u003ccode\u003e./package.json\u003c/code\u003e export to all packages  -  by \u003ca href=\"https://github.com/babu-ch\"\u003e\u003ccode\u003e@​babu-ch\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5343\"\u003evueuse/vueuse#5343\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/0d98998a\"\u003e\u003c!-- raw HTML omitted --\u003e(0d989)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecore\u003c/strong\u003e: Always return ssrValue in useCssSupports before mounted  -  by \u003ca href=\"https://github.com/danielroe\"\u003e\u003ccode\u003e@​danielroe\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5290\"\u003evueuse/vueuse#5290\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/76b0bcf7\"\u003e\u003c!-- raw HTML omitted --\u003e(76b0b)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edirective\u003c/strong\u003e: Create disposable directive func cleanup of side effects unmounted  -  by \u003ca href=\"https://github.com/kalu5\"\u003e\u003ccode\u003e@​kalu5\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/43081j\"\u003e\u003ccode\u003e@​43081j\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eRaman Paulau\u003c/strong\u003e and \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5244\"\u003evueuse/vueuse#5244\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/52d688fa\"\u003e\u003c!-- raw HTML omitted --\u003e(52d68)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edocs\u003c/strong\u003e: Typos in useManualRefHistory, useFocusWithin, useStorageAsync, useIntersectionObserver  -  by \u003ca href=\"https://github.com/blowsie\"\u003e\u003ccode\u003e@​blowsie\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eSam Blowes\u003c/strong\u003e and \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5329\"\u003evueuse/vueuse#5329\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/1d9c41a0\"\u003e\u003c!-- raw HTML omitted --\u003e(1d9c4)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edocs\u003c/strong\u003e: Add \u003ccode\u003eignoreDeprecations\u003c/code\u003e for twoslash TS 6.0 compat  -  by \u003ca href=\"https://github.com/antfu\"\u003e\u003ccode\u003e@​antfu\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5367\"\u003evueuse/vueuse#5367\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/9d1eb566\"\u003e\u003c!-- raw HTML omitted --\u003e(9d1eb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emetadata\u003c/strong\u003e: Cleanup removed function \u003ccode\u003eresolveRef\u003c/code\u003e  -  by \u003ca href=\"https://github.com/ntnyq\"\u003e\u003ccode\u003e@​ntnyq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5307\"\u003evueuse/vueuse#5307\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/49da8f9c\"\u003e\u003c!-- raw HTML omitted --\u003e(49da8)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eonClickOutside\u003c/strong\u003e: Detect iframe inside shadow DOM with detectIframe option  -  by \u003ca href=\"https://github.com/babu-ch\"\u003e\u003ccode\u003e@​babu-ch\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5336\"\u003evueuse/vueuse#5336\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/1a77b729\"\u003e\u003c!-- raw HTML omitted --\u003e(1a77b)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eshared\u003c/strong\u003e: Align overloads order of watch functions with original version  -  by \u003ca href=\"https://github.com/KazariEX\"\u003e\u003ccode\u003e@​KazariEX\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5288\"\u003evueuse/vueuse#5288\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/f1d328d5\"\u003e\u003c!-- raw HTML omitted --\u003e(f1d32)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseAxios\u003c/strong\u003e: Handle optional response data safely  -  by \u003ca href=\"https://github.com/jahnli\"\u003e\u003ccode\u003e@​jahnli\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5318\"\u003evueuse/vueuse#5318\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/51198e85\"\u003e\u003c!-- raw HTML omitted --\u003e(51198)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseCached\u003c/strong\u003e: Update comparator type and improve documentation  -  by \u003ca href=\"https://github.com/IceMooncake\"\u003e\u003ccode\u003e@​IceMooncake\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5376\"\u003evueuse/vueuse#5376\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/d886c2f5\"\u003e\u003c!-- raw HTML omitted --\u003e(d886c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseClipboard\u003c/strong\u003e: Prevents fail in Safari for async operation  -  by \u003ca href=\"https://github.com/MatteoGabriele\"\u003e\u003ccode\u003e@​MatteoGabriele\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5369\"\u003evueuse/vueuse#5369\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/5ec568d1\"\u003e\u003c!-- raw HTML omitted --\u003e(5ec56)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseSortable\u003c/strong\u003e: Re-query DOM on every \u003ccode\u003estart()\u003c/code\u003e for string selectors  -  by \u003ca href=\"https://github.com/Mini-ghost\"\u003e\u003ccode\u003e@​Mini-ghost\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5374\"\u003evueuse/vueuse#5374\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/3341fca0\"\u003e\u003c!-- raw HTML omitted --\u003e(3341f)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseVirtualList\u003c/strong\u003e: React to changes made in mutable arrays properly  -  by \u003ca href=\"https://github.com/dcherman\"\u003e\u003ccode\u003e@​dcherman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5267\"\u003evueuse/vueuse#5267\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/7069eb4c\"\u003e\u003c!-- raw HTML omitted --\u003e(7069e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseWakeLock\u003c/strong\u003e: Auto-release wake lock on component unmount  -  by \u003ca href=\"https://github.com/ProgrammingWithSid\"\u003e\u003ccode\u003e@​ProgrammingWithSid\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5271\"\u003evueuse/vueuse#5271\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/43937a3f\"\u003e\u003c!-- raw HTML omitted --\u003e(43937)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseWebSocket\u003c/strong\u003e: Race condition caused by onopen/onclose events.  -  by \u003ca href=\"https://github.com/DanCardin\"\u003e\u003ccode\u003e@​DanCardin\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/antfu\"\u003e\u003ccode\u003e@​antfu\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/9romise\"\u003e\u003ccode\u003e@​9romise\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5175\"\u003evueuse/vueuse#5175\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/6661c13c\"\u003e\u003c!-- raw HTML omitted --\u003e(6661c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ewhenever\u003c/strong\u003e: Improve old value types  -  by \u003ca href=\"https://github.com/VChet\"\u003e\u003ccode\u003e@​VChet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5096\"\u003evueuse/vueuse#5096\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/979c65fa\"\u003e\u003c!-- raw HTML omitted --\u003e(979c6)\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\u003eReplace \u003ccode\u003edeepRef\u003c/code\u003e with \u003ccode\u003eshallowRef\u003c/code\u003e where appropriate  -  by \u003ca href=\"https://github.com/9romise\"\u003e\u003ccode\u003e@​9romise\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5293\"\u003evueuse/vueuse#5293\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/80004f79\"\u003e\u003c!-- raw HTML omitted --\u003e(80004)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vueuse/vueuse/compare/v14.2.1...v14.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/vueuse/vueuse/commit/99c5df9a1017733046b496a6bb585d9fed7fbe8f\"\u003e\u003ccode\u003e99c5df9\u003c/code\u003e\u003c/a\u003e chore: release v14.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/1a3e57213e39a565998439906fcbf0bafc39d8ee\"\u003e\u003ccode\u003e1a3e572\u003c/code\u003e\u003c/a\u003e feat(useTextareaAutosize): add optional \u003ccode\u003emaxHeight\u003c/code\u003e to limit autosize growth ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/d886c2f5f8194632eb0a9244c3615e7eee2450a9\"\u003e\u003ccode\u003ed886c2f\u003c/code\u003e\u003c/a\u003e fix(useCached): update comparator type and improve documentation (\u003ca href=\"https://github.com/vueuse/vueuse/tree/HEAD/packages/core/issues/5376\"\u003e#5376\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/acf182ec8c2ce48f2c6713d85efb887b7de0f845\"\u003e\u003ccode\u003eacf182e\u003c/code\u003e\u003c/a\u003e docs(useCloned): add tip about watch flush timing (\u003ca href=\"https://github.com/vueuse/vueuse/tree/HEAD/packages/core/issues/5375\"\u003e#5375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/5ec568d17d45502625125ebe18d5370338e27d6e\"\u003e\u003ccode\u003e5ec568d\u003c/code\u003e\u003c/a\u003e fix(useClipboard): prevents fail in Safari for async operation (\u003ca href=\"https://github.com/vueuse/vueuse/tree/HEAD/packages/core/issues/5369\"\u003e#5369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/52d688fa3f91bb8d8c77b1afd4e57db6724f48f0\"\u003e\u003ccode\u003e52d688f\u003c/code\u003e\u003c/a\u003e fix(directive): create disposable directive func cleanup of side effects unmo...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/df724509e0cb35a8b02aadaeb954d902b1810d13\"\u003e\u003ccode\u003edf72450\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/1aa211e48e26e00ab7b9a6e7352f3274975b5c90\"\u003e\u003ccode\u003e1aa211e\u003c/code\u003e\u003c/a\u003e Make demo of \u003ccode\u003euseElementSize\u003c/code\u003e \u003ccode\u003ereadonly\u003c/code\u003e (\u003ca href=\"https://github.com/vueuse/vueuse/tree/HEAD/packages/core/issues/5365\"\u003e#5365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/0d98998ad56d99899d390f3f8d73a9955f77750e\"\u003e\u003ccode\u003e0d98998\u003c/code\u003e\u003c/a\u003e fix: add explicit \u003ccode\u003e./package.json\u003c/code\u003e export to all packages (\u003ca href=\"https://github.com/vueuse/vueuse/tree/HEAD/packages/core/issues/5343\"\u003e#5343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/8c252c33d57da4bd4a39d7318264e1f565760160\"\u003e\u003ccode\u003e8c252c3\u003c/code\u003e\u003c/a\u003e refactor: change primitive to \u003ccode\u003eshallowReadonly\u003c/code\u003e, rename \u003ccode\u003ereadonly\u003c/code\u003e usage to `...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vueuse/vueuse/commits/v14.3.0/packages/core\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `laravel-vite-plugin` from 3.0.0 to 3.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/laravel/vite-plugin/releases\"\u003elaravel-vite-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.3...v3.1.0\"\u003ehttps://github.com/laravel/vite-plugin/compare/v3.0.3...v3.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev3.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd font optimization plugin by \u003ca href=\"https://github.com/WendellAdriel\"\u003e\u003ccode\u003e@​WendellAdriel\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/348\"\u003elaravel/vite-plugin#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd release script and publish workflow by \u003ca href=\"https://github.com/joetannenbaum\"\u003e\u003ccode\u003e@​joetannenbaum\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/351\"\u003elaravel/vite-plugin#351\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/WendellAdriel\"\u003e\u003ccode\u003e@​WendellAdriel\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/348\"\u003elaravel/vite-plugin#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joetannenbaum\"\u003e\u003ccode\u003e@​joetannenbaum\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/351\"\u003elaravel/vite-plugin#351\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.1...v3.0.3\"\u003ehttps://github.com/laravel/vite-plugin/compare/v3.0.1...v3.0.3\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/laravel/vite-plugin/blob/3.x/CHANGELOG.md\"\u003elaravel-vite-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.3...v3.1.0\"\u003ev3.1.0\u003c/a\u003e - 2026-04-29\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.3...v3.1.0\"\u003ehttps://github.com/laravel/vite-plugin/compare/v3.0.3...v3.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.0...v3.0.3\"\u003ev3.0.3\u003c/a\u003e - 2026-04-29\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd font optimization plugin by \u003ca href=\"https://github.com/WendellAdriel\"\u003e\u003ccode\u003e@​WendellAdriel\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/348\"\u003elaravel/vite-plugin#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd release script and publish workflow by \u003ca href=\"https://github.com/joetannenbaum\"\u003e\u003ccode\u003e@​joetannenbaum\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/351\"\u003elaravel/vite-plugin#351\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Contributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/WendellAdriel\"\u003e\u003ccode\u003e@​WendellAdriel\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/348\"\u003elaravel/vite-plugin#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joetannenbaum\"\u003e\u003ccode\u003e@​joetannenbaum\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/351\"\u003elaravel/vite-plugin#351\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.1...v3.0.3\"\u003ehttps://github.com/laravel/vite-plugin/compare/v3.0.1...v3.0.3\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/laravel/vite-plugin/commit/c30bff49114feaf1e76302277f9f4b8513fa96d8\"\u003e\u003ccode\u003ec30bff4\u003c/code\u003e\u003c/a\u003e v3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/43c8679e2b2e3e8e2739d9a65650c207ed5fd77b\"\u003e\u003ccode\u003e43c8679\u003c/code\u003e\u003c/a\u003e Merge branch '3.x' of github.com:laravel/vite-plugin into 3.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/3e531d0a16bdfe7684da798d365ad0bef9953b20\"\u003e\u003ccode\u003e3e531d0\u003c/code\u003e\u003c/a\u003e Update publish.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/ab238402ded4fa4338a57c74781183d592b0bee9\"\u003e\u003ccode\u003eab23840\u003c/code\u003e\u003c/a\u003e Update CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/01d1725fc91edb034e5571c801ad9ecf2db4b14f\"\u003e\u003ccode\u003e01d1725\u003c/code\u003e\u003c/a\u003e v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/efec294fd0f50cc1f3538fda30f246d35ae8a551\"\u003e\u003ccode\u003eefec294\u003c/code\u003e\u003c/a\u003e Add release script and publish workflow (\u003ca href=\"https://redirect.github.com/laravel/vite-plugin/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/5cb4e786fb0edbd7563a7a310d5675132948e012\"\u003e\u003ccode\u003e5cb4e78\u003c/code\u003e\u003c/a\u003e Update package.json\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/0236378b598d4a35f02757d5ab21acabebad75f8\"\u003e\u003ccode\u003e0236378\u003c/code\u003e\u003c/a\u003e Add font optimization plugin (\u003ca href=\"https://redirect.github.com/laravel/vite-plugin/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/13ab8b35b2cbe931e4d6bd418642854ab8724c64\"\u003e\u003ccode\u003e13ab8b3\u003c/code\u003e\u003c/a\u003e 3.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/3998cf0bd8da825ebcadbd1997ffb50e75ad204a\"\u003e\u003ccode\u003e3998cf0\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eassets\u003c/code\u003e option emitting JS wrappers instead of static files (\u003ca href=\"https://redirect.github.com/laravel/vite-plugin/issues/345\"\u003e#345\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.0...v3.1.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 laravel-vite-plugin since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `reka-ui` from 2.9.2 to 2.9.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/unovue/reka-ui/releases\"\u003ereka-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.9.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExport missing TimeRange type  -  by \u003ca href=\"https://github.com/Bahtya\"\u003e\u003ccode\u003e@​Bahtya\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2590\"\u003eunovue/reka-ui#2590\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/70e7286b\"\u003e\u003c!-- raw HTML omitted --\u003e(70e72)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eMonthPicker, YearPicker\u003c/strong\u003e: Preserve day/month when selecting  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2594\"\u003eunovue/reka-ui#2594\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/836f2e92\"\u003e\u003c!-- raw HTML omitted --\u003e(836f2)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eTimeField\u003c/strong\u003e: Change focus after pressing 0 more than once on hour segment with 12 hour locales  -  by \u003ca href=\"https://github.com/zomakus\"\u003e\u003ccode\u003e@​zomakus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2581\"\u003eunovue/reka-ui#2581\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/1d77296b\"\u003e\u003c!-- raw HTML omitted --\u003e(1d772)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/unovue/reka-ui/compare/v2.9.5...v2.9.6\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.9.5\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecore\u003c/strong\u003e: Prevent /\u003cem\u003e#\u003cstrong\u003ePURE\u003c/strong\u003e\u003c/em\u003e/ annotation inside function declarations  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Sonnet 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2585\"\u003eunovue/reka-ui#2585\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/d7349e7d\"\u003e\u003c!-- raw HTML omitted --\u003e(d7349)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/unovue/reka-ui/compare/v2.9.4...v2.9.5\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.9.4\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomate namespaced components generation on build  -  by \u003ca href=\"https://github.com/mateusznarowski\"\u003e\u003ccode\u003e@​mateusznarowski\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2571\"\u003eunovue/reka-ui#2571\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/07951b19\"\u003e\u003c!-- raw HTML omitted --\u003e(07951)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove production tree-shaking  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2577\"\u003eunovue/reka-ui#2577\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/6ff20c35\"\u003e\u003c!-- raw HTML omitted --\u003e(6ff20)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDateField\u003c/strong\u003e: Fixed direct incorrect passing of date values to input element  -  by \u003ca href=\"https://github.com/rastuhacode\"\u003e\u003ccode\u003e@​rastuhacode\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2549\"\u003eunovue/reka-ui#2549\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/9c098224\"\u003e\u003c!-- raw HTML omitted --\u003e(9c098)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eListboxVirtualizer\u003c/strong\u003e: Ignore non-element VNodes in slot children  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2578\"\u003eunovue/reka-ui#2578\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/06042b43\"\u003e\u003c!-- raw HTML omitted --\u003e(06042)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eSelect\u003c/strong\u003e: Normalize hidden control  -  by \u003ca href=\"https://github.com/CTOJoe\"\u003e\u003ccode\u003e@​CTOJoe\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2572\"\u003eunovue/reka-ui#2572\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2573\"\u003eunovue/reka-ui#2573\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/172ea67c\"\u003e\u003c!-- raw HTML omitted --\u003e(172ea)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eTimeField,DateField\u003c/strong\u003e: Avoid changing focus prematurely with previous segment value of 0  -  by \u003ca href=\"https://github.com/zomakus\"\u003e\u003ccode\u003e@​zomakus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2568\"\u003eunovue/reka-ui#2568\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/c04bed34\"\u003e\u003c!-- raw HTML omitted --\u003e(c04be)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/unovue/reka-ui/compare/v2.9.3...v2.9.4\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.9.3\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eAutocomplete\u003c/strong\u003e: Add IME composition input handling  -  by \u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2541\"\u003eunovue/reka-ui#2541\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/987caf1f\"\u003e\u003c!-- raw HTML omitted --\u003e(987ca)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eColorField/ColorArea\u003c/strong\u003e: Forward custom attributes in ColorFieldRoot  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Sonnet 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2559\"\u003eunovue/reka-ui#2559\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/700c8759\"\u003e\u003c!-- raw HTML omitted --\u003e(700c8)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eCombobox\u003c/strong\u003e: Prevent \u003ccode\u003eaddOnBlur\u003c/code\u003e from adding raw input when selecting item  -  by \u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2514\"\u003eunovue/reka-ui#2514\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/bc1db727\"\u003e\u003c!-- raw HTML omitted --\u003e(bc1db)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFocusScope\u003c/strong\u003e: Don't move focus if DOM mutation occurred before any nodes had focus  -  by \u003ca href=\"https://github.com/romansp\"\u003e\u003ccode\u003e@​romansp\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2546\"\u003eunovue/reka-ui#2546\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/91023867\"\u003e\u003c!-- raw HTML omitted --\u003e(91023)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eListbox\u003c/strong\u003e: Restore highlightOnHover behavior  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Sonnet 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2558\"\u003eunovue/reka-ui#2558\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/ffde59ca\"\u003e\u003c!-- raw HTML omitted --\u003e(ffde5)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ePinInput\u003c/strong\u003e: Paste only numeric text in numeric mode  -  by \u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2516\"\u003eunovue/reka-ui#2516\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/bf7190ab\"\u003e\u003c!-- raw HTML omitted --\u003e(bf719)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eSelect\u003c/strong\u003e: Export SelectItemEmits type  -  by \u003ca href=\"https://github.com/CTOJoe\"\u003e\u003ccode\u003e@​CTOJoe\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2526\"\u003eunovue/reka-ui#2526\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2527\"\u003eunovue/reka-ui#2527\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/49d1d32b\"\u003e\u003c!-- raw HTML omitted --\u003e(49d1d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,hovercard\u003c/strong\u003e: Close when scrollable ancestor is scrolled  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Sonnet 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2557\"\u003eunovue/reka-ui#2557\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/a987ad50\"\u003e\u003c!-- raw HTML omitted --\u003e(a987a)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseForwardProps\u003c/strong\u003e: Return Partial\u003c!-- raw HTML omitted --\u003e to correctly type optional boolean props  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Sonnet 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2561\"\u003eunovue/reka-ui#2561\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/c22a4318\"\u003e\u003c!-- raw HTML omitted --\u003e(c22a4)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseGraceArea\u003c/strong\u003e: Add nil guard for hover target in grace area creation  -  by \u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2553\"\u003eunovue/reka-ui#2553\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/67fb1bd1\"\u003e\u003c!-- raw HTML omitted --\u003e(67fb1)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/unovue/reka-ui/compare/v2.9.2...v2.9.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/unovue/reka-ui/commit/e5667c2ab8905c5826911eee09fe95560791ad03\"\u003e\u003ccode\u003ee5667c2\u003c/code\u003e\u003c/a\u003e chore: release v2.9.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/836f2e92923c5d063c724f5d0b120176be28bd76\"\u003e\u003ccode\u003e836f2e9\u003c/code\u003e\u003c/a\u003e fix(MonthPicker, YearPicker): preserve day/month when selecting (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2594\"\u003e#2594\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/1d77296bd2914569b70c5324ccb70249754d31a1\"\u003e\u003ccode\u003e1d77296\u003c/code\u003e\u003c/a\u003e fix(TimeField): change focus after pressing 0 more than once on hour segment ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/fbd9f04b69b9aaffed4a1c25160b18484855233b\"\u003e\u003ccode\u003efbd9f04\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency vite to ^8.0.8 (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2592\"\u003e#2592\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/70e7286b693590ec76878d92fa218828544a1b26\"\u003e\u003ccode\u003e70e7286\u003c/code\u003e\u003c/a\u003e fix: export missing TimeRange type (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2590\"\u003e#2590\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/68a490b73c1dafa5983fc410bc14562d163322b7\"\u003e\u003ccode\u003e68a490b\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;chore(deps): bump vite from 5.4.21 to 8.0.5 (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2584\"\u003e#2584\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/e655d299bc7ba32ef3087394b2c8075cc3eecb09\"\u003e\u003ccode\u003ee655d29\u003c/code\u003e\u003c/a\u003e chore: release v2.9.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/ef016f26cbf15bd6914f9cb38a89b11f3fba0ed5\"\u003e\u003ccode\u003eef016f2\u003c/code\u003e\u003c/a\u003e chore(deps): bump vite from 5.4.21 to 8.0.5 (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2584\"\u003e#2584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/d7349e7db110d767e030fa8541f0fc737613efa6\"\u003e\u003ccode\u003ed7349e7\u003c/code\u003e\u003c/a\u003e fix(core): prevent /\u003cem\u003e#\u003cstrong\u003ePURE\u003c/strong\u003e\u003c/em\u003e/ annotation inside function declarations (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2585\"\u003e#2585\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/5cc56e0b573e898e667f07fd2a340686b2c36cfc\"\u003e\u003ccode\u003e5cc56e0\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump vite from 8.0.3 to 8.0.5 (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2582\"\u003e#2582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/unovue/reka-ui/compare/v2.9.2...v2.9.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwindcss` from 4.2.2 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003etailwindcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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 w...\n\n_Description has been truncated_","html_url":"https://github.com/SirMishaa/obsvr/pull/84","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/SirMishaa%2Fobsvr/issues/84","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/84/packages"},{"uuid":"4373645519","node_id":"PR_kwDORhEIoc7X24Wm","number":18,"state":"closed","title":"Bump the all group with 220 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-11T01:54:02.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T02:11:20.000Z","updated_at":"2026-05-11T01:54:04.000Z","time_to_close":603762,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"all","update_count":220,"packages":[{"name":"@hey-api/openapi-ts","old_version":"0.94.0","new_version":"0.97.1","repository_url":"https://github.com/hey-api/openapi-ts"},{"name":"@libsql/client","old_version":"0.17.0","new_version":"0.17.3","repository_url":"https://github.com/tursodatabase/libsql-client-ts"},{"name":"@lingui/core","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/react","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@supabase/supabase-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@tailwindcss/vite","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query","old_version":"5.95.2","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.166.7","new_version":"1.169.1","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/react-virtual","old_version":"3.13.23","new_version":"3.13.24","repository_url":"https://github.com/TanStack/virtual"},{"name":"@tanstack/router-plugin","old_version":"1.166.7","new_version":"1.167.32","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/react-query","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/server","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"framer-motion","old_version":"12.35.2","new_version":"12.38.0","repository_url":"https://github.com/motiondivision/motion"},{"name":"megajs","old_version":"1.3.9","new_version":"1.3.10","repository_url":"https://github.com/qgustavor/mega"},{"name":"pixi.js","old_version":"8.17.0","new_version":"8.18.1","repository_url":"https://github.com/pixijs/pixijs"},{"name":"react","old_version":"19.2.4","new_version":"19.2.5","repository_url":"https://github.com/facebook/react"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.5","repository_url":"https://github.com/facebook/react"},{"name":"systeminformation","old_version":"5.31.4","new_version":"5.31.5","repository_url":"https://github.com/sebhildebrandt/systeminformation"},{"name":"tailwindcss","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"yauzl","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/thejoshwolfe/yauzl"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.2","repository_url":"https://github.com/colinhacks/zod"},{"name":"@eslint/js","old_version":"9.39.4","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@lingui/cli","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@types/node","old_version":"25.4.0","new_version":"25.6.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"electron","old_version":"41.1.1","new_version":"41.5.0","repository_url":"https://github.com/electron/electron"},{"name":"eslint","old_version":"9.39.4","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.4.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"javascript-obfuscator","old_version":"5.3.0","new_version":"5.4.2","repository_url":"https://github.com/javascript-obfuscator/javascript-obfuscator"},{"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.3","new_version":"16.4.0","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":"terser","old_version":"5.46.0","new_version":"5.46.2","repository_url":"https://github.com/terser/terser"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"vite","old_version":"7.3.2","new_version":"8.0.10","repository_url":"https://github.com/vitejs/vite"},{"name":"vite-plugin-electron","old_version":"0.29.0","new_version":"0.29.1","repository_url":"https://github.com/electron-vite/vite-plugin-electron"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@asamuzakjp/css-color","old_version":"5.0.1","new_version":"5.1.11","repository_url":"https://github.com/asamuzaK/cssColor"},{"name":"@asamuzakjp/dom-selector","old_version":"6.8.1","new_version":"7.1.1","repository_url":"https://github.com/asamuzaK/domSelector"},{"name":"@babel/compat-data","old_version":"7.29.0","new_version":"7.29.3","repository_url":"https://github.com/babel/babel"},{"name":"@babel/helpers","old_version":"7.28.6","new_version":"7.29.2","repository_url":"https://github.com/babel/babel"},{"name":"@babel/parser","old_version":"7.29.0","new_version":"7.29.3","repository_url":"https://github.com/babel/babel"},{"name":"@babel/runtime","old_version":"7.28.6","new_version":"7.29.2","repository_url":"https://github.com/babel/babel"},{"name":"@csstools/css-calc","old_version":"3.1.1","new_version":"3.2.0","repository_url":"https://github.com/csstools/postcss-plugins"},{"name":"@csstools/css-color-parser","old_version":"4.0.2","new_version":"4.1.0","repository_url":"https://github.com/csstools/postcss-plugins"},{"name":"@csstools/css-syntax-patches-for-csstree","old_version":"1.0.28","new_version":"1.1.3","repository_url":"https://github.com/csstools/postcss-plugins"},{"name":"@electron/rebuild","old_version":"4.0.3","new_version":"4.0.4","repository_url":"https://github.com/electron/rebuild"},{"name":"brace-expansion","old_version":"1.1.13","new_version":"1.1.14","repository_url":"https://github.com/juliangruber/brace-expansion"},{"name":"@eslint/config-array","old_version":"0.21.2","new_version":"0.23.5","repository_url":"https://github.com/eslint/rewrite"},{"name":"@eslint/config-helpers","old_version":"0.4.2","new_version":"0.5.5","repository_url":"https://github.com/eslint/rewrite"},{"name":"@eslint/core","old_version":"0.17.0","new_version":"1.2.1","repository_url":"https://github.com/eslint/rewrite"},{"name":"@eslint/object-schema","old_version":"2.1.7","new_version":"3.0.5","repository_url":"https://github.com/eslint/rewrite"},{"name":"@eslint/plugin-kit","old_version":"0.4.1","new_version":"0.7.1","repository_url":"https://github.com/eslint/rewrite"},{"name":"@exodus/bytes","old_version":"1.14.1","new_version":"1.15.0","repository_url":"https://github.com/ExodusOSS/bytes"},{"name":"@hey-api/codegen-core","old_version":"0.7.1","new_version":"0.8.1","repository_url":"https://github.com/hey-api/openapi-ts"},{"name":"@hey-api/json-schema-ref-parser","old_version":"1.3.1","new_version":"1.4.2","repository_url":"https://github.com/hey-api/openapi-ts"},{"name":"@hey-api/shared","old_version":"0.2.2","new_version":"0.4.3","repository_url":"https://github.com/hey-api/openapi-ts"},{"name":"@hey-api/types","old_version":"0.1.3","new_version":"0.1.4","repository_url":"https://github.com/hey-api/openapi-ts"},{"name":"@humanfs/core","old_version":"0.19.1","new_version":"0.19.2","repository_url":"https://github.com/humanwhocodes/humanfs"},{"name":"@humanfs/node","old_version":"0.16.7","new_version":"0.16.8","repository_url":"https://github.com/humanwhocodes/humanfs"},{"name":"@javascript-obfuscator/escodegen","old_version":"2.3.1","new_version":"2.4.1","repository_url":"https://github.com/estools/escodegen"},{"name":"@libsql/core","old_version":"0.17.0","new_version":"0.17.3","repository_url":"https://github.com/tursodatabase/libsql-client-ts"},{"name":"@libsql/darwin-arm64","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/darwin-x64","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/hrana-client","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/libsql/hrana-client-ts"},{"name":"@libsql/linux-arm-gnueabihf","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/linux-arm-musleabihf","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/linux-arm64-gnu","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/linux-arm64-musl","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/linux-x64-gnu","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/linux-x64-musl","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/win32-x64-msvc","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@lingui/babel-plugin-extract-messages","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/babel-plugin-lingui-macro","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"chokidar","old_version":"3.5.1","new_version":"3.6.0","repository_url":"https://github.com/paulmillr/chokidar"},{"name":"readdirp","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/paulmillr/readdirp"},{"name":"@lingui/conf","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/format-po","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@noble/hashes","old_version":"2.0.1","new_version":"2.2.0","repository_url":"https://github.com/paulmillr/noble-hashes"},{"name":"@rolldown/pluginutils","old_version":"1.0.0-rc.3","new_version":"1.0.0-rc.7","repository_url":"https://github.com/rolldown/rolldown"},{"name":"@supabase/auth-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@supabase/functions-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@supabase/postgrest-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@supabase/realtime-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@supabase/storage-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@tailwindcss/node","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-android-arm64","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-arm64","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-x64","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-freebsd-x64","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm-gnueabihf","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-gnu","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-musl","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-musl","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-wasm32-wasi","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-arm64-msvc","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-x64-msvc","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/history","old_version":"1.161.4","new_version":"1.161.6","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/query-core","old_version":"5.95.2","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-store","old_version":"0.9.1","new_version":"0.9.3","repository_url":"https://github.com/TanStack/store"},{"name":"@tanstack/router-core","old_version":"1.166.7","new_version":"1.169.1","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-generator","old_version":"1.166.7","new_version":"1.166.39","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-utils","old_version":"1.161.4","new_version":"1.161.7","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/store","old_version":"0.9.1","new_version":"0.9.3","repository_url":"https://github.com/TanStack/store"},{"name":"@tanstack/virtual-core","old_version":"3.13.23","new_version":"3.14.0","repository_url":"https://github.com/TanStack/virtual"},{"name":"@tanstack/virtual-file-routes","old_version":"1.161.4","new_version":"1.161.7","repository_url":"https://github.com/TanStack/router"},{"name":"@types/debug","old_version":"4.1.12","new_version":"4.1.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/project-service","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/scope-manager","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/tsconfig-utils","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/type-utils","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/types","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/typescript-estree","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/utils","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/visitor-keys","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@vercel/blob","old_version":"2.3.1","new_version":"2.3.3","repository_url":"https://github.com/vercel/storage"},{"name":"undici","old_version":"6.24.1","new_version":"6.25.0","repository_url":"https://github.com/nodejs/undici"},{"name":"@vitest/expect","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/mocker","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/pretty-format","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/runner","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/snapshot","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/spy","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/utils","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@xmldom/xmldom","old_version":"0.8.12","new_version":"0.8.13","repository_url":"https://github.com/xmldom/xmldom"},{"name":"abbrev","old_version":"3.0.1","new_version":"4.0.0","repository_url":"https://github.com/npm/abbrev-js"},{"name":"ajv","old_version":"6.14.0","new_version":"6.15.0","repository_url":"https://github.com/ajv-validator/ajv"},{"name":"axe-core","old_version":"4.11.1","new_version":"4.11.4","repository_url":"https://github.com/dequelabs/axe-core"},{"name":"b4a","old_version":"1.8.0","new_version":"1.8.1","repository_url":"https://github.com/holepunchto/b4a"},{"name":"bare-fs","old_version":"4.5.6","new_version":"4.7.1","repository_url":"https://github.com/holepunchto/bare-fs"},{"name":"bare-os","old_version":"3.8.6","new_version":"3.9.1","repository_url":"https://github.com/holepunchto/bare-os"},{"name":"bare-stream","old_version":"2.11.0","new_version":"2.13.1","repository_url":"https://github.com/holepunchto/bare-stream"},{"name":"bare-url","old_version":"2.4.0","new_version":"2.4.2","repository_url":"https://github.com/holepunchto/bare-url"},{"name":"baseline-browser-mapping","old_version":"2.10.0","new_version":"2.10.27","repository_url":"https://github.com/web-platform-dx/baseline-browser-mapping"},{"name":"browserslist","old_version":"4.28.1","new_version":"4.28.2","repository_url":"https://github.com/browserslist/browserslist"},{"name":"c12","old_version":"3.3.3","new_version":"3.3.4","repository_url":"https://github.com/unjs/c12"},{"name":"call-bind","old_version":"1.0.8","new_version":"1.0.9","repository_url":"https://github.com/ljharb/call-bind"},{"name":"caniuse-lite","old_version":"1.0.30001775","new_version":"1.0.30001791","repository_url":"https://github.com/browserslist/caniuse-lite"},{"name":"cli-cursor","old_version":"3.1.0","new_version":"5.0.0","repository_url":"https://github.com/sindresorhus/cli-cursor"},{"name":"cli-spinners","old_version":"2.9.2","new_version":"3.4.0","repository_url":"https://github.com/sindresorhus/cli-spinners"},{"name":"conf","old_version":"15.0.2","new_version":"15.1.0","repository_url":"https://github.com/sindresorhus/conf"},{"name":"cookie-es","old_version":"2.0.0","new_version":"3.1.1","repository_url":"https://github.com/unjs/cookie-es"},{"name":"whatwg-url","old_version":"5.0.0","new_version":"16.0.1","repository_url":"https://github.com/jsdom/whatwg-url"},{"name":"tr46","old_version":"0.0.3","new_version":"6.0.0","repository_url":"https://github.com/jsdom/tr46"},{"name":"webidl-conversions","old_version":"3.0.1","new_version":"8.0.1","repository_url":"https://github.com/jsdom/webidl-conversions"},{"name":"css-tree","old_version":"3.1.0","new_version":"3.2.1","repository_url":"https://github.com/csstree/csstree"},{"name":"diff","old_version":"8.0.3","new_version":"8.0.4","repository_url":"https://github.com/kpdecker/jsdiff"},{"name":"electron-to-chromium","old_version":"1.5.302","new_version":"1.5.349","repository_url":"https://github.com/Kilian/electron-to-chromium"},{"name":"enhanced-resolve","old_version":"5.20.0","new_version":"5.21.0","repository_url":"https://github.com/webpack/enhanced-resolve"},{"name":"entities","old_version":"6.0.1","new_version":"8.0.0","repository_url":"https://github.com/fb55/entities"},{"name":"es-abstract","old_version":"1.24.1","new_version":"1.24.2","repository_url":"https://github.com/ljharb/es-abstract"},{"name":"es-iterator-helpers","old_version":"1.2.2","new_version":"1.3.2","repository_url":"https://github.com/es-shims/iterator-helpers"},{"name":"es-module-lexer","old_version":"1.7.0","new_version":"2.1.0","repository_url":"https://github.com/guybedford/es-module-lexer"},{"name":"espree","old_version":"10.4.0","new_version":"11.2.0","repository_url":"https://github.com/eslint/js"},{"name":"get-tsconfig","old_version":"4.13.6","new_version":"4.14.0","repository_url":"https://github.com/privatenumber/get-tsconfig"},{"name":"giget","old_version":"2.0.0","new_version":"3.2.0","repository_url":"https://github.com/unjs/giget"},{"name":"hasown","old_version":"2.0.2","new_version":"2.0.3","repository_url":"https://github.com/inspect-js/hasOwn"},{"name":"is-interactive","old_version":"1.0.0","new_version":"2.0.0","repository_url":"https://github.com/sindresorhus/is-interactive"},{"name":"is-unicode-supported","old_version":"0.1.0","new_version":"2.1.0","repository_url":"https://github.com/sindresorhus/is-unicode-supported"},{"name":"isbot","old_version":"5.1.35","new_version":"5.1.39","repository_url":"https://github.com/omrilotan/isbot"},{"name":"libphonenumber-js","old_version":"1.12.38","new_version":"1.12.42"},{"name":"libsql","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"lightningcss","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-android-arm64","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-darwin-arm64","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-darwin-x64","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-freebsd-x64","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-linux-arm-gnueabihf","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-linux-arm64-gnu","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-linux-arm64-musl","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-linux-x64-gnu","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-linux-x64-musl","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-win32-arm64-msvc","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-win32-x64-msvc","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"log-symbols","old_version":"4.1.0","new_version":"7.0.1","repository_url":"https://github.com/sindresorhus/log-symbols"},{"name":"mdn-data","old_version":"2.12.2","new_version":"2.27.1","repository_url":"https://github.com/mdn/data"},{"name":"minipass","old_version":"3.3.6","new_version":"7.1.3","repository_url":"https://github.com/isaacs/minipass"},{"name":"motion-dom","old_version":"12.35.2","new_version":"12.38.0","repository_url":"https://github.com/motiondivision/motion"},{"name":"motion-utils","old_version":"12.29.2","new_version":"12.36.0","repository_url":"https://github.com/motiondivision/motion"},{"name":"nanoid","old_version":"3.3.11","new_version":"3.3.12","repository_url":"https://github.com/ai/nanoid"},{"name":"node-abi","old_version":"4.26.0","new_version":"4.29.0","repository_url":"https://github.com/electron/node-abi"},{"name":"node-gyp","old_version":"11.5.0","new_version":"12.3.0","repository_url":"https://github.com/nodejs/node-gyp"},{"name":"node-releases","old_version":"2.0.27","new_version":"2.0.38","repository_url":"https://github.com/chicoxyzzy/node-releases"},{"name":"nopt","old_version":"8.1.0","new_version":"9.0.0","repository_url":"https://github.com/npm/nopt"},{"name":"onetime","old_version":"5.1.2","new_version":"7.0.0","repository_url":"https://github.com/sindresorhus/onetime"},{"name":"ora","old_version":"5.4.1","new_version":"9.4.0","repository_url":"https://github.com/sindresorhus/ora"},{"name":"restore-cursor","old_version":"3.1.0","new_version":"5.1.0","repository_url":"https://github.com/sindresorhus/restore-cursor"},{"name":"parse5","old_version":"8.0.0","new_version":"8.0.1","repository_url":"https://github.com/inikulin/parse5"},{"name":"pkg-types","old_version":"2.3.0","new_version":"2.3.1","repository_url":"https://github.com/unjs/pkg-types"},{"name":"postcss","old_version":"8.5.6","new_version":"8.5.13","repository_url":"https://github.com/postcss/postcss"},{"name":"proc-log","old_version":"5.0.0","new_version":"6.1.0","repository_url":"https://github.com/npm/proc-log"},{"name":"rc9","old_version":"2.1.2","new_version":"3.0.1","repository_url":"https://github.com/unjs/rc9"},{"name":"safe-array-concat","old_version":"1.1.3","new_version":"1.1.4","repository_url":"https://github.com/ljharb/safe-array-concat"},{"name":"sanitize-filename","old_version":"1.6.3","new_version":"1.6.4","repository_url":"https://github.com/parshap/node-sanitize-filename"},{"name":"sax","old_version":"1.4.4","new_version":"1.6.0","repository_url":"https://github.com/isaacs/sax-js"},{"name":"seroval","old_version":"1.5.0","new_version":"1.5.2","repository_url":"https://github.com/lxsmnsyc/seroval"},{"name":"seroval-plugins","old_version":"1.5.0","new_version":"1.5.2","repository_url":"https://github.com/lxsmnsyc/seroval"},{"name":"side-channel-list","old_version":"1.0.0","new_version":"1.0.1","repository_url":"https://github.com/ljharb/side-channel-list"},{"name":"std-env","old_version":"3.10.0","new_version":"4.1.0","repository_url":"https://github.com/unjs/std-env"},{"name":"tapable","old_version":"2.3.0","new_version":"2.3.3","repository_url":"https://github.com/webpack/tapable"},{"name":"tar-stream","old_version":"3.1.8","new_version":"3.2.0","repository_url":"https://github.com/mafintosh/tar-stream"},{"name":"tinyexec","old_version":"1.0.2","new_version":"1.1.2","repository_url":"https://github.com/tinylibs/tinyexec"},{"name":"tinyglobby","old_version":"0.2.15","new_version":"0.2.16","repository_url":"https://github.com/SuperchupuDev/tinyglobby"},{"name":"tinyrainbow","old_version":"3.0.3","new_version":"3.1.0","repository_url":"https://github.com/tinylibs/tinyrainbow"},{"name":"tldts","old_version":"7.0.23","new_version":"7.0.30","repository_url":"https://github.com/remusao/tldts"},{"name":"tldts-core","old_version":"7.0.23","new_version":"7.0.30","repository_url":"https://github.com/remusao/tldts"},{"name":"tough-cookie","old_version":"6.0.0","new_version":"6.0.1","repository_url":"https://github.com/salesforce/tough-cookie"},{"name":"ts-api-utils","old_version":"2.4.0","new_version":"2.5.0","repository_url":"https://github.com/JoshuaKGoldberg/ts-api-utils"},{"name":"unplugin","old_version":"2.3.11","new_version":"3.0.0","repository_url":"https://github.com/unjs/unplugin"},{"name":"validator","old_version":"13.15.26","new_version":"13.15.35","repository_url":"https://github.com/validatorjs/validator.js"},{"name":"ws","old_version":"8.19.0","new_version":"8.20.0","repository_url":"https://github.com/websockets/ws"},{"name":"yaml","old_version":"2.8.3","new_version":"2.8.4","repository_url":"https://github.com/eemeli/yaml"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all group with 220 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@hey-api/openapi-ts](https://github.com/hey-api/openapi-ts) | `0.94.0` | `0.97.1` |\n| [@libsql/client](https://github.com/tursodatabase/libsql-client-ts/tree/HEAD/packages/libsql-client) | `0.17.0` | `0.17.3` |\n| [@lingui/core](https://github.com/lingui/js-lingui/tree/HEAD/packages/core) | `5.9.5` | `6.0.1` |\n| [@lingui/react](https://github.com/lingui/js-lingui/tree/HEAD/packages/react) | `5.9.5` | `6.0.1` |\n| [@supabase/supabase-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js) | `2.99.1` | `2.105.1` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.1` | `4.2.4` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.95.2` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.166.7` | `1.169.1` |\n| [@tanstack/react-virtual](https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual) | `3.13.23` | `3.13.24` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.166.7` | `1.167.32` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.12.0` | `11.17.0` |\n| [@trpc/react-query](https://github.com/trpc/trpc/tree/HEAD/packages/react) | `11.12.0` | `11.17.0` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.12.0` | `11.17.0` |\n| [framer-motion](https://github.com/motiondivision/motion) | `12.35.2` | `12.38.0` |\n| [megajs](https://github.com/qgustavor/mega) | `1.3.9` | `1.3.10` |\n| [pixi.js](https://github.com/pixijs/pixijs) | `8.17.0` | `8.18.1` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.5` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.5` |\n| [systeminformation](https://github.com/sebhildebrandt/systeminformation) | `5.31.4` | `5.31.5` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.1` | `4.2.4` |\n| [yauzl](https://github.com/thejoshwolfe/yauzl) | `3.2.1` | `3.3.0` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.2` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.4` | `10.0.1` |\n| [@lingui/cli](https://github.com/lingui/js-lingui/tree/HEAD/packages/cli) | `5.9.5` | `6.0.1` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.4.0` | `25.6.0` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.57.0` | `8.59.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [electron](https://github.com/electron/electron) | `41.1.1` | `41.5.0` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.4` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.4.0` | `17.6.0` |\n| [javascript-obfuscator](https://github.com/javascript-obfuscator/javascript-obfuscator) | `5.3.0` | `5.4.2` |\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.3` | `16.4.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [terser](https://github.com/terser/terser) | `5.46.0` | `5.46.2` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.57.0` | `8.59.1` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.2` | `8.0.10` |\n| [vite-plugin-electron](https://github.com/electron-vite/vite-plugin-electron) | `0.29.0` | `0.29.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [@asamuzakjp/css-color](https://github.com/asamuzaK/cssColor) | `5.0.1` | `5.1.11` |\n| [@asamuzakjp/dom-selector](https://github.com/asamuzaK/domSelector) | `6.8.1` | `7.1.1` |\n| [@babel/compat-data](https://github.com/babel/babel/tree/HEAD/packages/babel-compat-data) | `7.29.0` | `7.29.3` |\n| [@babel/helpers](https://github.com/babel/babel/tree/HEAD/packages/babel-helpers) | `7.28.6` | `7.29.2` |\n| [@babel/parser](https://github.com/babel/babel/tree/HEAD/packages/babel-parser) | `7.29.0` | `7.29.3` |\n| [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) | `7.28.6` | `7.29.2` |\n| [@csstools/css-calc](https://github.com/csstools/postcss-plugins/tree/HEAD/packages/css-calc) | `3.1.1` | `3.2.0` |\n| [@csstools/css-color-parser](https://github.com/csstools/postcss-plugins/tree/HEAD/packages/css-color-parser) | `4.0.2` | `4.1.0` |\n| [@csstools/css-syntax-patches-for-csstree](https://github.com/csstools/postcss-plugins/tree/HEAD/packages/css-syntax-patches-for-csstree) | `1.0.28` | `1.1.3` |\n| [@electron/rebuild](https://github.com/electron/rebuild) | `4.0.3` | `4.0.4` |\n| [brace-expansion](https://github.com/juliangruber/brace-expansion) | `1.1.13` | `1.1.14` |\n| [@eslint/config-array](https://github.com/eslint/rewrite/tree/HEAD/packages/config-array) | `0.21.2` | `0.23.5` |\n| [@eslint/config-helpers](https://github.com/eslint/rewrite/tree/HEAD/packages/config-helpers) | `0.4.2` | `0.5.5` |\n| [@eslint/core](https://github.com/eslint/rewrite/tree/HEAD/packages/core) | `0.17.0` | `1.2.1` |\n| [@eslint/object-schema](https://github.com/eslint/rewrite/tree/HEAD/packages/object-schema) | `2.1.7` | `3.0.5` |\n| [@eslint/plugin-kit](https://github.com/eslint/rewrite/tree/HEAD/packages/plugin-kit) | `0.4.1` | `0.7.1` |\n| [@exodus/bytes](https://github.com/ExodusOSS/bytes) | `1.14.1` | `1.15.0` |\n| [@hey-api/codegen-core](https://github.com/hey-api/openapi-ts) | `0.7.1` | `0.8.1` |\n| [@hey-api/json-schema-ref-parser](https://github.com/hey-api/openapi-ts) | `1.3.1` | `1.4.2` |\n| [@hey-api/shared](https://github.com/hey-api/openapi-ts) | `0.2.2` | `0.4.3` |\n| [@hey-api/types](https://github.com/hey-api/openapi-ts) | `0.1.3` | `0.1.4` |\n| [@humanfs/core](https://github.com/humanwhocodes/humanfs) | `0.19.1` | `0.19.2` |\n| [@humanfs/node](https://github.com/humanwhocodes/humanfs/tree/HEAD/packages/node) | `0.16.7` | `0.16.8` |\n| [@javascript-obfuscator/escodegen](https://github.com/estools/escodegen) | `2.3.1` | `2.4.1` |\n| [@libsql/core](https://github.com/tursodatabase/libsql-client-ts/tree/HEAD/packages/libsql-core) | `0.17.0` | `0.17.3` |\n| [@libsql/darwin-arm64](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/darwin-x64](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/hrana-client](https://github.com/libsql/hrana-client-ts) | `0.9.0` | `0.10.0` |\n| [@libsql/linux-arm-gnueabihf](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/linux-arm-musleabihf](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/linux-arm64-gnu](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/linux-arm64-musl](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/linux-x64-gnu](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/linux-x64-musl](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/win32-x64-msvc](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@lingui/babel-plugin-extract-messages](https://github.com/lingui/js-lingui/tree/HEAD/packages/babel-plugin-extract-messages) | `5.9.5` | `6.0.1` |\n| [@lingui/babel-plugin-lingui-macro](https://github.com/lingui/js-lingui/tree/HEAD/packages/babel-plugin-lingui-macro) | `5.9.5` | `6.0.1` |\n| [chokidar](https://github.com/paulmillr/chokidar) | `3.5.1` | `3.6.0` |\n| [readdirp](https://github.com/paulmillr/readdirp) | `3.5.0` | `3.6.0` |\n| [@lingui/conf](https://github.com/lingui/js-lingui/tree/HEAD/packages/conf) | `5.9.5` | `6.0.1` |\n| [@lingui/format-po](https://github.com/lingui/js-lingui/tree/HEAD/packages/format-po) | `5.9.5` | `6.0.1` |\n| [@noble/hashes](https://github.com/paulmillr/noble-hashes) | `2.0.1` | `2.2.0` |\n| [@rolldown/pluginutils](https://github.com/rolldown/rolldown/tree/HEAD/packages/pluginutils) | `1.0.0-rc.3` | `1.0.0-rc.7` |\n| [@supabase/auth-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/auth-js) | `2.99.1` | `2.105.1` |\n| [@supabase/functions-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/functions-js) | `2.99.1` | `2.105.1` |\n| [@supabase/postgrest-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/postgrest-js) | `2.99.1` | `2.105.1` |\n| [@supabase/realtime-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/realtime-js) | `2.99.1` | `2.105.1` |\n| [@supabase/storage-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/storage-js) | `2.99.1` | `2.105.1` |\n| [@tailwindcss/node](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-android-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/android-arm64) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-darwin-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-arm64) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-darwin-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-x64) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-freebsd-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/freebsd-x64) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm-gnueabihf](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm-gnueabihf) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-gnu) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-musl) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-linux-x64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-musl) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-wasm32-wasi](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-win32-arm64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-arm64-msvc) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-win32-x64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-x64-msvc) | `4.2.1` | `4.2.4` |\n| [@tanstack/history](https://github.com/TanStack/router/tree/HEAD/packages/history) | `1.161.4` | `1.161.6` |\n| [@tanstack/query-core](https://github.com/TanStack/query/tree/HEAD/packages/query-core) | `5.95.2` | `5.100.9` |\n| [@tanstack/react-store](https://github.com/TanStack/store/tree/HEAD/packages/react-store) | `0.9.1` | `0.9.3` |\n| [@tanstack/router-core](https://github.com/TanStack/router/tree/HEAD/packages/router-core) | `1.166.7` | `1.169.1` |\n| [@tanstack/router-generator](https://github.com/TanStack/router/tree/HEAD/packages/router-generator) | `1.166.7` | `1.166.39` |\n| [@tanstack/router-utils](https://github.com/TanStack/router/tree/HEAD/packages/router-utils) | `1.161.4` | `1.161.7` |\n| [@tanstack/store](https://github.com/TanStack/store/tree/HEAD/packages/store) | `0.9.1` | `0.9.3` |\n| [@tanstack/virtual-core](https://github.com/TanStack/virtual/tree/HEAD/packages/virtual-core) | `3.13.23` | `3.14.0` |\n| [@tanstack/virtual-file-routes](https://github.com/TanStack/router/tree/HEAD/packages/virtual-file-routes) | `1.161.4` | `1.161.7` |\n| [@types/debug](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/debug) | `4.1.12` | `4.1.13` |\n| [@typescript-eslint/project-service](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/project-service) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/scope-manager](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/scope-manager) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/tsconfig-utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/tsconfig-utils) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/type-utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/type-utils) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/types](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/types) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/typescript-estree](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-estree) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/utils) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/visitor-keys](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/visitor-keys) | `8.57.0` | `8.59.1` |\n| [@vercel/blob](https://github.com/vercel/storage/tree/HEAD/packages/blob) | `2.3.1` | `2.3.3` |\n| [undici](https://github.com/nodejs/undici) | `6.24.1` | `6.25.0` |\n| [@vitest/expect](https://github.com/vitest-dev/vitest/tree/HEAD/packages/expect) | `4.0.18` | `4.1.5` |\n| [@vitest/mocker](https://github.com/vitest-dev/vitest/tree/HEAD/packages/mocker) | `4.0.18` | `4.1.5` |\n| [@vitest/pretty-format](https://github.com/vitest-dev/vitest/tree/HEAD/packages/pretty-format) | `4.0.18` | `4.1.5` |\n| [@vitest/runner](https://github.com/vitest-dev/vitest/tree/HEAD/packages/runner) | `4.0.18` | `4.1.5` |\n| [@vitest/snapshot](https://github.com/vitest-dev/vitest/tree/HEAD/packages/snapshot) | `4.0.18` | `4.1.5` |\n| [@vitest/spy](https://github.com/vitest-dev/vitest/tree/HEAD/packages/spy) | `4.0.18` | `4.1.5` |\n| [@vitest/utils](https://github.com/vitest-dev/vitest/tree/HEAD/packages/utils) | `4.0.18` | `4.1.5` |\n| [@xmldom/xmldom](https://github.com/xmldom/xmldom) | `0.8.12` | `0.8.13` |\n| [abbrev](https://github.com/npm/abbrev-js) | `3.0.1` | `4.0.0` |\n| [ajv](https://github.com/ajv-validator/ajv) | `6.14.0` | `6.15.0` |\n| [axe-core](https://github.com/dequelabs/axe-core) | `4.11.1` | `4.11.4` |\n| [b4a](https://github.com/holepunchto/b4a) | `1.8.0` | `1.8.1` |\n| [bare-fs](https://github.com/holepunchto/bare-fs) | `4.5.6` | `4.7.1` |\n| [bare-os](https://github.com/holepunchto/bare-os) | `3.8.6` | `3.9.1` |\n| [bare-stream](https://github.com/holepunchto/bare-stream) | `2.11.0` | `2.13.1` |\n| [bare-url](https://github.com/holepunchto/bare-url) | `2.4.0` | `2.4.2` |\n| [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) | `2.10.0` | `2.10.27` |\n| [browserslist](https://github.com/browserslist/browserslist) | `4.28.1` | `4.28.2` |\n| [c12](https://github.com/unjs/c12) | `3.3.3` | `3.3.4` |\n| [call-bind](https://github.com/ljharb/call-bind) | `1.0.8` | `1.0.9` |\n| [caniuse-lite](https://github.com/browserslist/caniuse-lite) | `1.0.30001775` | `1.0.30001791` |\n| [cli-cursor](https://github.com/sindresorhus/cli-cursor) | `3.1.0` | `5.0.0` |\n| [cli-spinners](https://github.com/sindresorhus/cli-spinners) | `2.9.2` | `3.4.0` |\n| [conf](https://github.com/sindresorhus/conf) | `15.0.2` | `15.1.0` |\n| [cookie-es](https://github.com/unjs/cookie-es) | `2.0.0` | `3.1.1` |\n| [whatwg-url](https://github.com/jsdom/whatwg-url) | `5.0.0` | `16.0.1` |\n| [tr46](https://github.com/jsdom/tr46) | `0.0.3` | `6.0.0` |\n| [webidl-conversions](https://github.com/jsdom/webidl-conversions) | `3.0.1` | `8.0.1` |\n| [css-tree](https://github.com/csstree/csstree) | `3.1.0` | `3.2.1` |\n| [diff](https://github.com/kpdecker/jsdiff) | `8.0.3` | `8.0.4` |\n| [electron-to-chromium](https://github.com/Kilian/electron-to-chromium) | `1.5.302` | `1.5.349` |\n| [enhanced-resolve](https://github.com/webpack/enhanced-resolve) | `5.20.0` | `5.21.0` |\n| [entities](https://github.com/fb55/entities) | `6.0.1` | `8.0.0` |\n| [es-abstract](https://github.com/ljharb/es-abstract) | `1.24.1` | `1.24.2` |\n| [es-iterator-helpers](https://github.com/es-shims/iterator-helpers) | `1.2.2` | `1.3.2` |\n| [es-module-lexer](https://github.com/guybedford/es-module-lexer) | `1.7.0` | `2.1.0` |\n| [espree](https://github.com/eslint/js/tree/HEAD/packages/espree) | `10.4.0` | `11.2.0` |\n| [get-tsconfig](https://github.com/privatenumber/get-tsconfig) | `4.13.6` | `4.14.0` |\n| [giget](https://github.com/unjs/giget) | `2.0.0` | `3.2.0` |\n| [hasown](https://github.com/inspect-js/hasOwn) | `2.0.2` | `2.0.3` |\n| [is-interactive](https://github.com/sindresorhus/is-interactive) | `1.0.0` | `2.0.0` |\n| [is-unicode-supported](https://github.com/sindresorhus/is-unicode-supported) | `0.1.0` | `2.1.0` |\n| [isbot](https://github.com/omrilotan/isbot) | `5.1.35` | `5.1.39` |\n| [libphonenumber-js](https://gitlab.com/catamphetamine/libphonenumber-js) | `1.12.38` | `1.12.42` |\n| [libsql](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [lightningcss](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-android-arm64](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-darwin-arm64](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-darwin-x64](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-freebsd-x64](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-linux-arm-gnueabihf](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-linux-arm64-gnu](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-linux-arm64-musl](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-linux-x64-gnu](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-linux-x64-musl](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-win32-arm64-msvc](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-win32-x64-msvc](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [log-symbols](https://github.com/sindresorhus/log-symbols) | `4.1.0` | `7.0.1` |\n| [mdn-data](https://github.com/mdn/data) | `2.12.2` | `2.27.1` |\n| [minipass](https://github.com/isaacs/minipass) | `3.3.6` | `7.1.3` |\n| [motion-dom](https://github.com/motiondivision/motion) | `12.35.2` | `12.38.0` |\n| [motion-utils](https://github.com/motiondivision/motion) | `12.29.2` | `12.36.0` |\n| [nanoid](https://github.com/ai/nanoid) | `3.3.11` | `3.3.12` |\n| [node-abi](https://github.com/electron/node-abi) | `4.26.0` | `4.29.0` |\n| [node-gyp](https://github.com/nodejs/node-gyp) | `11.5.0` | `12.3.0` |\n| [node-releases](https://github.com/chicoxyzzy/node-releases) | `2.0.27` | `2.0.38` |\n| [nopt](https://github.com/npm/nopt) | `8.1.0` | `9.0.0` |\n| [onetime](https://github.com/sindresorhus/onetime) | `5.1.2` | `7.0.0` |\n| [ora](https://github.com/sindresorhus/ora) | `5.4.1` | `9.4.0` |\n| [restore-cursor](https://github.com/sindresorhus/restore-cursor) | `3.1.0` | `5.1.0` |\n| [parse5](https://github.com/inikulin/parse5) | `8.0.0` | `8.0.1` |\n| [pkg-types](https://github.com/unjs/pkg-types) | `2.3.0` | `2.3.1` |\n| [postcss](https://github.com/postcss/postcss) | `8.5.6` | `8.5.13` |\n| [proc-log](https://github.com/npm/proc-log) | `5.0.0` | `6.1.0` |\n| [rc9](https://github.com/unjs/rc9) | `2.1.2` | `3.0.1` |\n| [safe-array-concat](https://github.com/ljharb/safe-array-concat) | `1.1.3` | `1.1.4` |\n| [sanitize-filename](https://github.com/parshap/node-sanitize-filename) | `1.6.3` | `1.6.4` |\n| [sax](https://github.com/isaacs/sax-js) | `1.4.4` | `1.6.0` |\n| [seroval](https://github.com/lxsmnsyc/seroval) | `1.5.0` | `1.5.2` |\n| [seroval-plugins](https://github.com/lxsmnsyc/seroval) | `1.5.0` | `1.5.2` |\n| [side-channel-list](https://github.com/ljharb/side-channel-list) | `1.0.0` | `1.0.1` |\n| [std-env](https://github.com/unjs/std-env) | `3.10.0` | `4.1.0` |\n| [tapable](https://github.com/webpack/tapable) | `2.3.0` | `2.3.3` |\n| [tar-stream](https://github.com/mafintosh/tar-stream) | `3.1.8` | `3.2.0` |\n| [tinyexec](https://github.com/tinylibs/tinyexec) | `1.0.2` | `1.1.2` |\n| [tinyglobby](https://github.com/SuperchupuDev/tinyglobby) | `0.2.15` | `0.2.16` |\n| [tinyrainbow](https://github.com/tinylibs/tinyrainbow) | `3.0.3` | `3.1.0` |\n| [tldts](https://github.com/remusao/tldts) | `7.0.23` | `7.0.30` |\n| [tldts-core](https://github.com/remusao/tldts) | `7.0.23` | `7.0.30` |\n| [tough-cookie](https://github.com/salesforce/tough-cookie) | `6.0.0` | `6.0.1` |\n| [ts-api-utils](https://github.com/JoshuaKGoldberg/ts-api-utils) | `2.4.0` | `2.5.0` |\n| [unplugin](https://github.com/unjs/unplugin) | `2.3.11` | `3.0.0` |\n| [validator](https://github.com/validatorjs/validator.js) | `13.15.26` | `13.15.35` |\n| [ws](https://github.com/websockets/ws) | `8.19.0` | `8.20.0` |\n| [yaml](https://github.com/eemeli/yaml) | `2.8.3` | `2.8.4` |\n\nUpdates `@hey-api/openapi-ts` from 0.94.0 to 0.97.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hey-api/openapi-ts/releases\"\u003e@​hey-api/openapi-ts's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​hey-api/openapi-ts\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.95.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eplugin(valibot)\u003c/strong\u003e: remove request data schema (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3671\"\u003e#3671\u003c/a\u003e) (\u003ca href=\"https://github.com/hey-api/openapi-ts/commit/96f60adb6af144e39133884e97e74a6693b6c059\"\u003e\u003ccode\u003e96f60ad\u003c/code\u003e\u003c/a\u003e) by \u003ca href=\"https://github.com/mrlubos\"\u003e\u003ccode\u003e@​mrlubos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eValidator request schemas\u003c/h3\u003e\n\u003cp\u003eValibot plugin no longer exports composite request \u003ccode\u003eData\u003c/code\u003e schemas. Instead, each layer is exported as a separate schema. If you're using validators with SDKs, you can preserve the composite schema with \u003ccode\u003eshouldExtract\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eexport default {\n  input: \u0026quot;hey-api/backend\u0026quot;, // sign up at app.heyapi.dev\n  output: \u0026quot;src/client\u0026quot;,\n  plugins: [\n    // ...other plugins\n    {\n      name: \u0026quot;sdk\u0026quot;,\n      validator: \u0026quot;valibot\u0026quot;,\n    },\n    {\n      name: \u0026quot;valibot\u0026quot;,\n      requests: {\n        shouldExtract: true,\n      },\n    },\n  ],\n};\n\u003c/code\u003e\u003c/pre\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003einternal\u003c/strong\u003e: remove \u003ccode\u003eplugin.getSymbol()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3671\"\u003e#3671\u003c/a\u003e) (\u003ca href=\"https://github.com/hey-api/openapi-ts/commit/96f60adb6af144e39133884e97e74a6693b6c059\"\u003e\u003ccode\u003e96f60ad\u003c/code\u003e\u003c/a\u003e) by \u003ca href=\"https://github.com/mrlubos\"\u003e\u003ccode\u003e@​mrlubos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved \u003ccode\u003eplugin.getSymbol()\u003c/code\u003e function\u003c/h3\u003e\n\u003cp\u003eThis function has been removed. You can use \u003ccode\u003eplugin.querySymbol()\u003c/code\u003e instead. It accepts the same arguments and returns the same result.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eplugin(zod)\u003c/strong\u003e: remove request data schema (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3671\"\u003e#3671\u003c/a\u003e) (\u003ca href=\"https://github.com/hey-api/openapi-ts/commit/96f60adb6af144e39133884e97e74a6693b6c059\"\u003e\u003ccode\u003e96f60ad\u003c/code\u003e\u003c/a\u003e) by \u003ca href=\"https://github.com/mrlubos\"\u003e\u003ccode\u003e@​mrlubos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eValidator request schemas\u003c/h3\u003e\n\u003cp\u003eZod plugin no longer exports composite request \u003ccode\u003eData\u003c/code\u003e schemas. Instead, each layer is exported as a separate schema. If you're using validators with SDKs, you can preserve the composite schema with \u003ccode\u003eshouldExtract\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eexport default {\n  input: \u0026quot;hey-api/backend\u0026quot;, // sign up at app.heyapi.dev\n  output: \u0026quot;src/client\u0026quot;,\n  plugins: [\n    // ...other plugins\n    {\n      name: \u0026quot;sdk\u0026quot;,\n      validator: \u0026quot;zod\u0026quot;,\n\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hey-api/openapi-ts/blob/main/CHANGELOG.md\"\u003e@​hey-api/openapi-ts's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003ch1\u003e2026-04-28\u003c/h1\u003e\n\u003ch2\u003e\u003ccode\u003e@​hey-api/openapi-ts\u003c/code\u003e 0.97.0\u003c/h2\u003e\n\u003ch3\u003e⚠️ Breaking\u003c/h3\u003e\n\u003cp\u003eThis release has 15 breaking changes. Please review the release notes carefully before upgrading.\u003c/p\u003e\n\u003ch3\u003eUpdates\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecli: print file count and generator speed (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3828\"\u003e#3828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e client: resolve \u003ccode\u003eruntimeConfigPath\u003c/code\u003e relative to the output folder (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3770\"\u003e#3770\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged \u003ccode\u003eruntimeConfigPath\u003c/code\u003e behavior\u003c/h3\u003e\n\u003cp\u003eThis was a known, long-standing issue confusing first-time users. Before, defining client \u003ccode\u003eruntimeConfigPath\u003c/code\u003e value would paste it verbatim to the generated output. This release changes the behavior to resolve relative to the current working directory the same way output path works.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003econfig: remove \u003ccode\u003e--apply\u003c/code\u003e flag from Biome post-processor commands (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3812\"\u003e#3812\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePlugins\u003c/h3\u003e\n\u003ch4\u003e\u003ccode\u003e@​hey-api/client-angular\u003c/code\u003e\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e \u003ccode\u003erequest\u003c/code\u003e and \u003ccode\u003eresponse\u003c/code\u003e objects might be undefined (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e respect \u003ccode\u003ethrowOnError\u003c/code\u003e when request validation fails (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e\u003ccode\u003e@​hey-api/client-fetch\u003c/code\u003e\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e pass previous result to error interceptors (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e \u003ccode\u003erequest\u003c/code\u003e and \u003ccode\u003eresponse\u003c/code\u003e objects might be undefined (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e respect \u003ccode\u003ethrowOnError\u003c/code\u003e when request validation fails (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e\u003ccode\u003e@​hey-api/client-ky\u003c/code\u003e\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e pass previous result to error interceptors (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e \u003ccode\u003erequest\u003c/code\u003e and \u003ccode\u003eresponse\u003c/code\u003e objects might be undefined (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e respect \u003ccode\u003ethrowOnError\u003c/code\u003e when request validation fails (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e respect ky instance defaults (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3806\"\u003e#3806\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged Ky client behavior\u003c/h3\u003e\n\u003cp\u003eThe Ky client was updated to be more intuitive. Some Ky options now need to be passed via the \u003ccode\u003ekyOptions\u003c/code\u003e field and you need to pass \u003ccode\u003eundefined\u003c/code\u003e to unset an option.\u003c/p\u003e\n\u003ch4\u003e\u003ccode\u003e@​hey-api/client-next\u003c/code\u003e\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e \u003ccode\u003erequest\u003c/code\u003e and \u003ccode\u003eresponse\u003c/code\u003e objects might be undefined (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e pass previous result to error interceptors (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e respect \u003ccode\u003ethrowOnError\u003c/code\u003e when request validation fails (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\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\u003eSee full diff in \u003ca href=\"https://github.com/hey-api/openapi-ts/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@libsql/client` from 0.17.0 to 0.17.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/9d158a718ab655024e175d47a36565bd0178810b\"\u003e\u003ccode\u003e9d158a7\u003c/code\u003e\u003c/a\u003e 0.17.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/db7212640402f15e04b9fe7c16ca6cfa2b00ff07\"\u003e\u003ccode\u003edb72126\u003c/code\u003e\u003c/a\u003e 0.17.3-pre.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/e5d58414c671aabc88dfadf75fc1f3fd731da43d\"\u003e\u003ccode\u003ee5d5841\u003c/code\u003e\u003c/a\u003e Drop removed hrana-client re-exports from client test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/82b63c0466efc4435dfb05681988cb4656c86ed5\"\u003e\u003ccode\u003e82b63c0\u003c/code\u003e\u003c/a\u003e 0.17.3-pre.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/d377872e0ac42c7022d27b637815269fff8be6d1\"\u003e\u003ccode\u003ed377872\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003e@​libsql/hrana-client\u003c/code\u003e to 0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/697ae59038dc61224c1b3cf57b0d5a71b315ca5a\"\u003e\u003ccode\u003e697ae59\u003c/code\u003e\u003c/a\u003e 0.17.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/b15a87226612dad953f56d2dee10f811137ead92\"\u003e\u003ccode\u003eb15a872\u003c/code\u003e\u003c/a\u003e Bump libsql dependency\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/1fede76c2ffa109a67a20e8a73d366a9fba538c2\"\u003e\u003ccode\u003e1fede76\u003c/code\u003e\u003c/a\u003e 0.17.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/8f1e8d386e95f98891af56283a731261224c43ca\"\u003e\u003ccode\u003e8f1e8d3\u003c/code\u003e\u003c/a\u003e Bump libsql dependency\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/138f4a3c334f6031d372e46f29409c8384c6f4e6\"\u003e\u003ccode\u003e138f4a3\u003c/code\u003e\u003c/a\u003e Mention Turso serverless package\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commits/v0.17.3/packages/libsql-client\"\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.5 to 6.0.1\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.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\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003emacro:\u003c/strong\u003e add optional configurable JSX placeholder naming (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2505\"\u003e#2505\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eloader:\u003c/strong\u003e make webpack peer dependency optional and update Rspack example (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2475\"\u003e#2475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epo-format:\u003c/strong\u003e remove duplicated references when \u003ccode\u003elineNumbers\u003c/code\u003e is false (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2509\"\u003e#2509\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecli:\u003c/strong\u003e support braces in catalog pathname (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2495\"\u003e#2495\u003c/a\u003e) \u003cem\u003e(backported from v5.x)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDiscussion\u003c/h2\u003e\n\u003cp\u003eVisit the \u003ca href=\"https://github.com/lingui/js-lingui/discussions/2455\"\u003erelated discussion\u003c/a\u003e if you have any questions about this release or feedback. We'd love to hear from you!\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/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\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\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/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\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/2848e873f73b76c12b8aec6e672712d236c85b27\"\u003e\u003ccode\u003e2848e87\u003c/code\u003e\u003c/a\u003e fix(macro): add shims for macro executed in nodejs without transpilation (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2471\"\u003e#2471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/c3247d657e6010b4da3c53e83079902a2e83abb8\"\u003e\u003ccode\u003ec3247d6\u003c/code\u003e\u003c/a\u003e chore: fix eslint config for react (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2449\"\u003e#2449\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lingui/js-lingui/commits/v6.0.1/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.5 to 6.0.1\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.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\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003emacro:\u003c/strong\u003e add optional configurable JSX placeholder naming (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2505\"\u003e#2505\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eloader:\u003c/strong\u003e make webpack peer dependency optional and update Rspack example (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2475\"\u003e#2475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epo-format:\u003c/strong\u003e remove duplicated references when \u003ccode\u003elineNumbers\u003c/code\u003e is false (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2509\"\u003e#2509\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecli:\u003c/strong\u003e support braces in catalog pathname (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2495\"\u003e#2495\u003c/a\u003e) \u003cem\u003e(backported from v5.x)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDiscussion\u003c/h2\u003e\n\u003cp\u003eVisit the \u003ca href=\"https://github.com/lingui/js-lingui/discussions/2455\"\u003erelated discussion\u003c/a\u003e if you have any questions about this release or feedback. We'd love to hear from you!\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/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\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\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/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\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/2848e873f73b76c12b8aec6e672712d236c85b27\"\u003e\u003ccode\u003e2848e87\u003c/code\u003e\u003c/a\u003e fix(macro): add shims for macro executed in nodejs without transpilation (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2471\"\u003e#2471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/c3247d657e6010b4da3c53e83079902a2e83abb8\"\u003e\u003ccode\u003ec3247d6\u003c/code\u003e\u003c/a\u003e chore: fix eslint config for react (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2449\"\u003e#2449\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lingui/js-lingui/commits/v6.0.1/packages/react\"\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.99.1 to 2.105.1\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.105.1\u003c/h2\u003e\n\u003ch2\u003e2.105.1 (2026-04-28)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003epostgrest:\u003c/strong\u003e query reassignment regression (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2292\"\u003e#2292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erealtime:\u003c/strong\u003e surface real Error on transport-level CHANNEL_ERROR (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2299\"\u003e#2299\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\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.105.1-canary.2\u003c/h2\u003e\n\u003ch2\u003e2.105.1-canary.2 (2026-04-28)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erealtime:\u003c/strong\u003e surface real Error on transport-level CHANNEL_ERROR (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2299\"\u003e#2299\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.105.1-canary.1\u003c/h2\u003e\n\u003ch2\u003e2.105.1-canary.1 (2026-04-28)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003ch2\u003ev2.105.1-canary.0\u003c/h2\u003e\n\u003ch2\u003e2.105.1-canary.0 (2026-04-28)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003epostgrest:\u003c/strong\u003e query reassignment regression (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2292\"\u003e#2292\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\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.105.0\u003c/h2\u003e\n\u003ch2\u003e2.105.0 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eauth:\u003c/strong\u003e add passkey support with WebAuthn registration, authentication, and management (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2283\"\u003e#2283\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erealtime:\u003c/strong\u003e Realtime deferred disconnect (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2282\"\u003e#2282\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003epostgrest:\u003c/strong\u003e narrow column types after not(column, is, null) (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2264\"\u003e#2264\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erealtime:\u003c/strong\u003e annotate Timer/Vsn getters to avoid deep phoenix imports (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2284\"\u003e#2284\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003estorage:\u003c/strong\u003e apply metadata, headers, and cacheControl dedupe to uploadToSignedUrl (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2275\"\u003e#2275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003estorage:\u003c/strong\u003e forward duplex option for stream uploads via uploadToSignedUrl (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2289\"\u003e#2289\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/supabase/supabase-js/blob/develop/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.105.1 (2026-04-28)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.105.0 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eauth:\u003c/strong\u003e add passkey support with WebAuthn registration, authentication, and management (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2283\"\u003e#2283\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erealtime:\u003c/strong\u003e Realtime deferred disconnect (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2282\"\u003e#2282\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.104.1 (2026-04-23)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003esupabase:\u003c/strong\u003e propagate custom fetch to realtime client (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2267\"\u003e#2267\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.104.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.103.3 (2026-04-16)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.103.2 (2026-04-15)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.103.1 (2026-04-15)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.103.0 (2026-04-09)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.102.1 (2026-04-07)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.102.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003esupabase:\u003c/strong\u003e export PostgrestFilterBuilder and StorageApiError from supabase-js (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2222\"\u003e#2222\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/supabase/supabase-js/commit/ca8c418dbe912a72d6c6434c319d432d31867943\"\u003e\u003ccode\u003eca8c418\u003c/code\u003e\u003c/a\u003e chore(release): version 2.105.0 changelogs (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2290\"\u003e#2290\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/d19e6d3f8f7344205175034146ce61548d415837\"\u003e\u003ccode\u003ed19e6d3\u003c/code\u003e\u003c/a\u003e [patchback] docs(misc): rename anon key → publishable key and service role ke...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/c420456290b0eccf34a2eb5625294752b52e26d4\"\u003e\u003ccode\u003ec420456\u003c/code\u003e\u003c/a\u003e [patchback] feat(auth): add passkey support with WebAuthn registration, authe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/bfb18bc82f452bf6987886ffbbe6a974496bf88d\"\u003e\u003ccode\u003ebfb18bc\u003c/code\u003e\u003c/a\u003e [patchback] feat(realtime): Realtime deferred disconnect (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2282\"\u003e#2282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/ed49eed13592a7c874ec799d6aa8ff7b675aa929\"\u003e\u003ccode\u003eed49eed\u003c/code\u003e\u003c/a\u003e chore(release): version 2.104.1 changelogs (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2273\"\u003e#2273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/122d3a94cce7b4a4b7e340779c8f82bac99ff1b3\"\u003e\u003ccode\u003e122d3a9\u003c/code\u003e\u003c/a\u003e fix(supabase): propagate custom fetch to realtime client (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2267\"\u003e#2267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/9360d4ae2797d25d6b53d5c6c99981d2a814f26b\"\u003e\u003ccode\u003e9360d4a\u003c/code\u003e\u003c/a\u003e chore(release): version 2.104.0 changelogs (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2261\"\u003e#2261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/897fb8e9d288e74dd47e765b5d6ec647e765a3cb\"\u003e\u003ccode\u003e897fb8e\u003c/code\u003e\u003c/a\u003e docs(repo): show createClient as primary example in all client constructors (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/7a9b2e15031253b542dc3c2294e41c818b61509d\"\u003e\u003ccode\u003e7a9b2e1\u003c/code\u003e\u003c/a\u003e chore(release): version 2.103.3 changelogs (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2258\"\u003e#2258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/a2f94144fae2a4a5dc713cb71dbcce46ad3e92f0\"\u003e\u003ccode\u003ea2f9414\u003c/code\u003e\u003c/a\u003e chore(release): version 2.103.2 changelogs (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2253\"\u003e#2253\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/supabase/supabase-js/commits/v2.105.1/packages/core/supabase-js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/vite` from 4.2.1 to 4.2.4\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.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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.2\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Vite 8 in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19790\"\u003e#19790\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDon't crash when candidates contain prototype properties like \u003ccode\u003erow-constructor\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19725\"\u003e#19725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalize \u003ccode\u003ecalc(var(--spacing)*…)\u003c/code\u003e expressions into \u003ccode\u003e--spacing(…)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19769\"\u003e#19769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash in canonicalization step when handling utilities containing \u003ccode\u003e@property\u003c/code\u003e at-rules (e.g. \u003ccode\u003eshadow-sm border\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19727\"\u003e#19727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip full reload for server only modules scanned by client CSS when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19745\"\u003e#19745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove canonicalization for bare values exceeding default spacing scale suggestions (e.g. \u003ccode\u003ew-1234 h-1234\u003c/code\u003e → \u003ccode\u003esize-1234\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19809\"\u003e#19809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix canonicalization resulting in empty list (e.g. \u003ccode\u003ew-5 h-5 size-5\u003c/code\u003e → \u003ccode\u003e''\u003c/code\u003e instead of \u003ccode\u003esize-5\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19812\"\u003e#19812\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/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.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\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.2] - 2026-03-18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3...\n\n_Description has been truncated_","html_url":"https://github.com/FapLandPartyDev/FapLand-Party-Edition/pull/18","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/FapLandPartyDev%2FFapLand-Party-Edition/issues/18","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/18/packages"},{"uuid":"4373416126","node_id":"PR_kwDOKznqAc7X2LVj","number":270,"state":"closed","title":"chore(deps): bump the production-dependencies group across 1 directory with 4 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-05T03:14:45.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T00:36:09.000Z","updated_at":"2026-05-05T03:14:47.000Z","time_to_close":95916,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":4,"packages":[{"name":"@tailwindcss/vite","old_version":"4.2.3","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"starlight-versions","old_version":"0.8.1","new_version":"0.8.2","repository_url":"https://github.com/HiDeoo/starlight-versions"},{"name":"tailwindcss","old_version":"4.2.3","new_version":"4.2.4"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.3","new_version":"4.2.4"}],"path":null,"ecosystem":"npm"},"body":"Bumps the production-dependencies group with 2 updates in the / directory: [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) and [starlight-versions](https://github.com/HiDeoo/starlight-versions/tree/HEAD/packages/starlight-versions).\n\nUpdates `@tailwindcss/vite` from 4.2.3 to 4.2.4\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.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\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/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.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\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/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\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/packages/@tailwindcss-vite\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `starlight-versions` from 0.8.1 to 0.8.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/HiDeoo/starlight-versions/releases\"\u003estarlight-versions's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003estarlight-versions@0.8.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/HiDeoo/starlight-versions/pull/64\"\u003e#64\u003c/a\u003e \u003ca href=\"https://github.com/HiDeoo/starlight-versions/commit/5e262755d6b8f61ba4c17f59f32ff0fa0ff87938\"\u003e\u003ccode\u003e5e26275\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Hexalyse\"\u003e\u003ccode\u003e@​Hexalyse\u003c/code\u003e\u003c/a\u003e! - Fixes a Windows-only issue where archived docs could generate incorrect routes.\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/HiDeoo/starlight-versions/blob/main/packages/starlight-versions/CHANGELOG.md\"\u003estarlight-versions's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.8.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/HiDeoo/starlight-versions/pull/64\"\u003e#64\u003c/a\u003e \u003ca href=\"https://github.com/HiDeoo/starlight-versions/commit/5e262755d6b8f61ba4c17f59f32ff0fa0ff87938\"\u003e\u003ccode\u003e5e26275\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Hexalyse\"\u003e\u003ccode\u003e@​Hexalyse\u003c/code\u003e\u003c/a\u003e! - Fixes a Windows-only issue where archived docs could generate incorrect routes.\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/HiDeoo/starlight-versions/commit/3c7db4fbf5dbac544d69015ec508c43ea127c26a\"\u003e\u003ccode\u003e3c7db4f\u003c/code\u003e\u003c/a\u003e ci: release (\u003ca href=\"https://github.com/HiDeoo/starlight-versions/tree/HEAD/packages/starlight-versions/issues/67\"\u003e#67\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/HiDeoo/starlight-versions/commit/5e262755d6b8f61ba4c17f59f32ff0fa0ff87938\"\u003e\u003ccode\u003e5e26275\u003c/code\u003e\u003c/a\u003e Fix Windows path separator issue with i18n versioned content (\u003ca href=\"https://github.com/HiDeoo/starlight-versions/tree/HEAD/packages/starlight-versions/issues/64\"\u003e#64\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/HiDeoo/starlight-versions/commits/starlight-versions@0.8.2/packages/starlight-versions\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwindcss` from 4.2.3 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003etailwindcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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/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/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/packages/tailwindcss\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.3 to 4.2.4\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/oxide-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/defenseunicorns/pepr-docs/pull/270","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/defenseunicorns%2Fpepr-docs/issues/270","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/270/packages"},{"uuid":"4335607016","node_id":"PR_kwDORPmCMc7V8-_6","number":55,"state":"closed","title":"chore(deps): bump @tailwindcss/oxide-linux-x64-gnu from 4.2.2 to 4.2.4 in the npm-minor-patch group","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-04T12:37:07.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-27T12:09:17.000Z","updated_at":"2026-05-04T12:37:09.000Z","time_to_close":606470,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":"the npm-minor-patch group","ecosystem":"npm"},"body":"Bumps the npm-minor-patch group with 1 update: [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu).\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.2.2\u0026new-version=4.2.4)](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 \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/binarygary/gratitude/pull/55","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/binarygary%2Fgratitude/issues/55","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/55/packages"},{"uuid":"4332865868","node_id":"PR_kwDORqB-ZM7Vz-2X","number":64,"state":"closed","title":"chore: bump the workspace-non-fast group across 1 directory with 17 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-11T03:21:02.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-27T03:17:27.000Z","updated_at":"2026-05-11T03:21:04.000Z","time_to_close":1209815,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore: bump","group_name":"workspace-non-fast","update_count":17,"packages":[{"name":"ajv","old_version":"8.18.0","new_version":"8.20.0","repository_url":"https://github.com/ajv-validator/ajv"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"zod-to-json-schema","old_version":"3.25.1","new_version":"3.25.2","repository_url":"https://github.com/StefanTerdell/zod-to-json-schema"},{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.59.1","repository_url":"https://github.com/microsoft/playwright"},{"name":"@types/node","old_version":"25.5.0","new_version":"25.6.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"jsdom","old_version":"29.0.1","new_version":"29.1.0","repository_url":"https://github.com/jsdom/jsdom"},{"name":"@esbuild/linux-x64","old_version":"0.27.4","new_version":"0.28.0","repository_url":"https://github.com/evanw/esbuild"},{"name":"@next/swc-linux-x64-gnu","old_version":"16.2.1","new_version":"16.2.4","repository_url":"https://github.com/vercel/next.js"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@rollup/rollup-linux-x64-gnu","old_version":"4.60.0","new_version":"4.60.2","repository_url":"https://github.com/rollup/rollup"},{"name":"lightningcss-linux-x64-gnu","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"@tailwindcss/postcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"next","old_version":"16.2.1","new_version":"16.2.4","repository_url":"https://github.com/vercel/next.js"},{"name":"react","old_version":"19.2.4","new_version":"19.2.5","repository_url":"https://github.com/facebook/react"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.5","repository_url":"https://github.com/facebook/react"},{"name":"@modelcontextprotocol/sdk","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"}],"path":null,"ecosystem":"npm"},"body":"Bumps the workspace-non-fast group with 16 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ajv](https://github.com/ajv-validator/ajv) | `8.18.0` | `8.20.0` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [zod-to-json-schema](https://github.com/StefanTerdell/zod-to-json-schema) | `3.25.1` | `3.25.2` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.59.1` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.5.0` | `25.6.0` |\n| [jsdom](https://github.com/jsdom/jsdom) | `29.0.1` | `29.1.0` |\n| [@esbuild/linux-x64](https://github.com/evanw/esbuild) | `0.27.4` | `0.28.0` |\n| [@next/swc-linux-x64-gnu](https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu) | `16.2.1` | `16.2.4` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.1` | `4.2.4` |\n| [@rollup/rollup-linux-x64-gnu](https://github.com/rollup/rollup) | `4.60.0` | `4.60.2` |\n| [lightningcss-linux-x64-gnu](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.2` | `4.2.4` |\n| [next](https://github.com/vercel/next.js) | `16.2.1` | `16.2.4` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.5` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.5` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.28.0` | `1.29.0` |\n\n\nUpdates `ajv` from 8.18.0 to 8.20.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ajv-validator/ajv/releases\"\u003eajv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.20.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: add support for node 22/24, drop node 16/21 by \u003ca href=\"https://github.com/jasoniangreen\"\u003e\u003ccode\u003e@​jasoniangreen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/ajv-validator/ajv/pull/2580\"\u003eajv-validator/ajv#2580\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: add ES2022.RegExp for RegExpIndicesArray by \u003ca href=\"https://github.com/SignpostMarv\"\u003e\u003ccode\u003e@​SignpostMarv\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/ajv-validator/ajv/pull/2604\"\u003eajv-validator/ajv#2604\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/ajv-validator/ajv/compare/v8.19.0...v8.20.0\"\u003ehttps://github.com/ajv-validator/ajv/compare/v8.19.0...v8.20.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev8.19.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix prototype pollution via format keyword using $data ref by \u003ca href=\"https://github.com/epoberezkin\"\u003e\u003ccode\u003e@​epoberezkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/ajv-validator/ajv/pull/2607\"\u003eajv-validator/ajv#2607\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/ajv-validator/ajv/compare/v8.18.0...v8.19.0\"\u003ehttps://github.com/ajv-validator/ajv/compare/v8.18.0...v8.19.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/ajv-validator/ajv/commit/0fba0b8e649909613cfce0999b149cd08f4a4987\"\u003e\u003ccode\u003e0fba0b8\u003c/code\u003e\u003c/a\u003e 8.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ajv-validator/ajv/commit/9caf8d64409b05e2c670b3ff09cf7ca07937342e\"\u003e\u003ccode\u003e9caf8d6\u003c/code\u003e\u003c/a\u003e fix: add ES2022.RegExp for RegExpIndicesArray; fixes \u003ca href=\"https://redirect.github.com/ajv-validator/ajv/issues/2603\"\u003eajv-validator/ajv#2603\u003c/a\u003e (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ajv-validator/ajv/commit/206535071f776f57737394c8896d4b2dc2bfb9a3\"\u003e\u003ccode\u003e2065350\u003c/code\u003e\u003c/a\u003e fix: add support for node 22/24, drop node 16/21 (\u003ca href=\"https://redirect.github.com/ajv-validator/ajv/issues/2580\"\u003e#2580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ajv-validator/ajv/commit/154b58d690c6596e09ca676e12720ab8234ee3d2\"\u003e\u003ccode\u003e154b58d\u003c/code\u003e\u003c/a\u003e 8.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ajv-validator/ajv/commit/e8d2bdc501b3ba6f03922db5e595770d4763d9da\"\u003e\u003ccode\u003ee8d2bdc\u003c/code\u003e\u003c/a\u003e test/fix prototype pollution via $data ref with format keyword (\u003ca href=\"https://redirect.github.com/ajv-validator/ajv/issues/2607\"\u003e#2607\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/ajv-validator/ajv/compare/v8.18.0...v8.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dotenv` from 17.3.1 to 17.4.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md\"\u003edotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/motdotla/dotenv/compare/v17.4.1...v17.4.2\"\u003e17.4.2\u003c/a\u003e (2026-04-12)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved skill files - tightened up details (\u003ca href=\"https://redirect.github.com/motdotla/dotenv/pull/1009\"\u003e#1009\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/motdotla/dotenv/compare/v17.4.0...v17.4.1\"\u003e17.4.1\u003c/a\u003e (2026-04-05)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChange text \u003ccode\u003einjecting\u003c/code\u003e to \u003ccode\u003einjected\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/motdotla/dotenv/pull/1005\"\u003e#1005\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/motdotla/dotenv/compare/v17.3.1...v17.4.0\"\u003e17.4.0\u003c/a\u003e (2026-04-01)\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eskills/\u003c/code\u003e folder with focused agent skills: \u003ccode\u003eskills/dotenv/SKILL.md\u003c/code\u003e (core usage) and \u003ccode\u003eskills/dotenvx/SKILL.md\u003c/code\u003e (encryption, multiple environments, variable expansion) for AI coding agent discovery via the skills.sh ecosystem (\u003ccode\u003enpx skills add motdotla/dotenv\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eTighten up logs: \u003ccode\u003e◇ injecting env (14) from .env\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/motdotla/dotenv/pull/1003\"\u003e#1003\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/motdotla/dotenv/commit/f116f70310abab44fbfddbaeb833698b5bf84a9b\"\u003e\u003ccode\u003ef116f70\u003c/code\u003e\u003c/a\u003e 17.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/3a8161274fdd745239b86e604f4a7e972a1d3902\"\u003e\u003ccode\u003e3a81612\u003c/code\u003e\u003c/a\u003e fix visual order of faq\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/13f55a89e136b2024e68d277b836dd5260fc16cf\"\u003e\u003ccode\u003e13f55a8\u003c/code\u003e\u003c/a\u003e Merge branch 'skill'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/4bbbf73f0906bd69975c48bf310a84b686e5b1b4\"\u003e\u003ccode\u003e4bbbf73\u003c/code\u003e\u003c/a\u003e reorganize faq\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/c3da64bb2ba1d0e02f8b9b2b7ccb7e6f7a51d56c\"\u003e\u003ccode\u003ec3da64b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/motdotla/dotenv/issues/1009\"\u003e#1009\u003c/a\u003e from motdotla/skill\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/6f743b173fbd6c26f7eab7040d251f9a6c8b977d\"\u003e\u003ccode\u003e6f743b1\u003c/code\u003e\u003c/a\u003e update source\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/fc2c6247e858a32d4024cb06a5b0c79aa35851f5\"\u003e\u003ccode\u003efc2c624\u003c/code\u003e\u003c/a\u003e update skill\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/972315ba74bb2bbba4483d112e853fd26006ef8a\"\u003e\u003ccode\u003e972315b\u003c/code\u003e\u003c/a\u003e Tighten up skill\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/2795fce3d1ed07b4c570f1e06ab1c0d533c86997\"\u003e\u003ccode\u003e2795fce\u003c/code\u003e\u003c/a\u003e reorganize faq\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/d5495d4ae8e4e41ef9a682c9e00c81552794274e\"\u003e\u003ccode\u003ed5495d4\u003c/code\u003e\u003c/a\u003e adjust skill\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/motdotla/dotenv/compare/v17.3.1...v17.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zod-to-json-schema` from 3.25.1 to 3.25.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/StefanTerdell/zod-to-json-schema/blob/master/changelog.md\"\u003ezod-to-json-schema's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eVersion\u003c/th\u003e\n\u003cth\u003eChange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.25.2\u003c/td\u003e\n\u003ctd\u003eBumps the peer dependency of Zod 3 to 3.25.28 - Versions before patch 13 caused \u003ca href=\"https://redirect.github.com/StefanTerdell/zod-to-json-schema/issues/185\"\u003eOOM issues\u003c/a\u003e and versions between that and 28 removed the /v3 import alias.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.25.1\u003c/td\u003e\n\u003ctd\u003eFixes large install size due to accidental inclusion of test files. Thanks, \u003ca href=\"https://github.com/felixmosh\"\u003eFelix Mosheev\u003c/a\u003e!\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.25.0\u003c/td\u003e\n\u003ctd\u003eAdds support for v3.25 and v3 through v4 (\u003ccode\u003eimport { z } from \u0026quot;zod/v3\u0026quot;\u003c/code\u003e). Big thank you to both \u003ca href=\"https://github.com/finom\"\u003eAndrey Gubanovs\u003c/a\u003e and especially to \u003ca href=\"https://github.com/Abdillah\"\u003eFaïz Hernawan Abdillah\u003c/a\u003e, whose more minimal implementation was merged. This will likely be the final release of \u003ccode\u003ezod-to-json-schema\u003c/code\u003e, as v4 now supports JSON schema natively.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.6\u003c/td\u003e\n\u003ctd\u003eRemoved use of instanceOf to check for optional properties as differing package versions could produce intermittent bugs. Added OpenAiAnyType to work around their schema restrictions.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.5\u003c/td\u003e\n\u003ctd\u003eUpdate .npmignore to drop 2 mb of test files. Thanks \u003ca href=\"https://github.com/mmkal\"\u003eMisha Kaletsky\u003c/a\u003e!\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.4\u003c/td\u003e\n\u003ctd\u003eAdded options to set the value of additionalProperties in objects and record\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.3\u003c/td\u003e\n\u003ctd\u003eAdds postProcess callback option\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.2\u003c/td\u003e\n\u003ctd\u003eRestructured internals to remove circular dependencies which apparently might cause some build systems to whine a bit. Big thanks to \u003ca href=\"https://github.com/NanezX\"\u003eVíctor Hernández\u003c/a\u003e for the fix.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.1\u003c/td\u003e\n\u003ctd\u003eAdds OpenAI target\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.0\u003c/td\u003e\n\u003ctd\u003eImplements new string checks (jwt, base64url, cidr ipv4/v6), matching the new Zod version\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.5\u003c/td\u003e\n\u003ctd\u003eModule import hotfix by \u003ca href=\"https://github.com/enzomonjardin\"\u003eEnzo Monjardín\u003c/a\u003e. Thanks!\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.4\u003c/td\u003e\n\u003ctd\u003eFixes branded regex property names and a weird edgecase in arrays. Thanks to \u003ca href=\"https://github.com/imsanchez\"\u003eIsaiah Marc Sanchez\u003c/a\u003e and \u003ca href=\"https://github.com/mitchell-merry\"\u003eMitchell Merry\u003c/a\u003e!\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.3\u003c/td\u003e\n\u003ctd\u003eMore tests (Thanks \u003ca href=\"https://github.com/brettz9\"\u003eBrett Zamir!\u003c/a\u003e), removed dead code\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.2\u003c/td\u003e\n\u003ctd\u003eLazily loads Emoji regex to avoid incompatibility with some environments. Thanks \u003ca href=\"https://github.com/jacoblee93\"\u003eJacob Lee\u003c/a\u003e!\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.1\u003c/td\u003e\n\u003ctd\u003eBest-effort RegEx flag support by \u003ca href=\"https://github.com/Spappz\"\u003eSpappz\u003c/a\u003e! Some minor fixes and additions, such as the title option.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.0\u003c/td\u003e\n\u003ctd\u003eAdds support for base64, date, time, duration and nanoid string validations. A warm welcome and a big thanks to \u003ca href=\"https://www.github.com/colinhacks\"\u003eColin\u003c/a\u003e, the creator of Zod, joining in as a contributor :)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.5\u003c/td\u003e\n\u003ctd\u003eAdds new z.date() parsing options and override callback\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.4\u003c/td\u003e\n\u003ctd\u003eAdds fix for nullable references in OpenAPI mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.3\u003c/td\u003e\n\u003ctd\u003eAdjust root path from \u0026quot;#/\u0026quot; to \u0026quot;#\u0026quot; according to RFC 6901\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.2\u003c/td\u003e\n\u003ctd\u003eAdds \u0026quot;output\u0026quot; pipe strategy\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.1\u003c/td\u003e\n\u003ctd\u003eFixes broken imports when using some bundlers\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.0\u003c/td\u003e\n\u003ctd\u003eSupport readonly. Export both CJS and ESM. Export everything from index. Alternative map parser. Improved pattern handling and updated sources.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.21.4\u003c/td\u003e\n\u003ctd\u003eFixes missing support for exact array length\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.21.3\u003c/td\u003e\n\u003ctd\u003eFixes issue \u003ca href=\"https://redirect.github.com/StefanTerdell/zod-to-json-schema/issues/77\"\u003e#77\u003c/a\u003e (Reference path to nullable schemas in Open-API mode)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.21.2\u003c/td\u003e\n\u003ctd\u003eAdds \u0026quot;integer\u0026quot; type Date output to support min/max checks, markdownDescription option, fixes \u0026quot;none\u0026quot; refStrategy by adding \u0026quot;seen\u0026quot; and adds an option to use \u0026quot;pattern\u0026quot; with Zods' email enum instead of \u0026quot;format\u0026quot;.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.21.1\u003c/td\u003e\n\u003ctd\u003eNew target (2019-09) along with improved intersection schemas, improved mutual recursion references in definitions, descriptions respected in union parser and not removed in collapsed\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.21.0\u003c/td\u003e\n\u003ctd\u003eAdded new string validations (ip, emoji, etc) and BigInt checks to support Zod 3.21\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.5\u003c/td\u003e\n\u003ctd\u003eAdded uniqueItems to Set and an option to disregard pipe schemas\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.4\u003c/td\u003e\n\u003ctd\u003eBugfixes and improved record parsing for openApi3\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.3\u003c/td\u003e\n\u003ctd\u003eAdded Cuid2 support introduced in Zod 3.20.3\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.2\u003c/td\u003e\n\u003ctd\u003eReintroduced conditional simplified return-type for when target is OpenAPI 3\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.1\u003c/td\u003e\n\u003ctd\u003eFixed inconsistent casing in imports\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.0\u003c/td\u003e\n\u003ctd\u003eAdds support for Zod 3.20 with catch and pipe parser as well as new string validations. Refactored Ref handling; adding definitions no longer considered experimental. Main API function refactored and simplified; output type less defined but a lot easier to maintain. Doubt anyone will miss it. \u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003eNarrator: Someone did in fact miss it\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.19.4\u003c/td\u003e\n\u003ctd\u003eAdds custom error message support\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.19.3\u003c/td\u003e\n\u003ctd\u003eMark \u003ccode\u003edefinitions\u003c/code\u003e as experimental in the readme\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.19.2\u003c/td\u003e\n\u003ctd\u003eAdded \u003ccode\u003edefinitions\u003c/code\u003e option\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.19.1\u003c/td\u003e\n\u003ctd\u003eStrict unions fix\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.19.0\u003c/td\u003e\n\u003ctd\u003eNo new features added in Zod, parity bump\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.18.2\u003c/td\u003e\n\u003ctd\u003eFixes support for native enums\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.18.1\u003c/td\u003e\n\u003ctd\u003eAdd strictUnions options\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.18.0\u003c/td\u003e\n\u003ctd\u003eAdded support for branded types\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.17.2\u003c/td\u003e\n\u003ctd\u003eFix for reference paths when supplying name option string.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.17.1\u003c/td\u003e\n\u003ctd\u003eAdded startsWith and endsWith string checks. Merge multiple pattern checks into allOf array.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.17.0\u003c/td\u003e\n\u003ctd\u003eAdded switch case handler for new trim \u0026quot;check\u0026quot;. No changes to functionality.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.15.x - 3.16.x\u003c/td\u003e\n\u003ctd\u003eSkipped: Did not change the Zod API in any way relevant for this package.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.14.1\u003c/td\u003e\n\u003ctd\u003eDependabot security updates\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/StefanTerdell/zod-to-json-schema/commits\"\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.59.1\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\u003ccode\u003e@​playwright/test\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.59.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e[Windows]\u003c/strong\u003e Reverted hiding console window when spawning browser processes, which caused regressions including broken \u003ccode\u003ecodegen\u003c/code\u003e, \u003ccode\u003e--ui\u003c/code\u003e and \u003ccode\u003eshow\u003c/code\u003e commands (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39990\"\u003e#39990\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.59.0\u003c/h2\u003e\n\u003ch2\u003e🎬 Screencast\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-page#page-screencast\"\u003epage.screencast\u003c/a\u003e API provides a unified interface for capturing page content with:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eScreencast recordings\u003c/li\u003e\n\u003cli\u003eAction annotations\u003c/li\u003e\n\u003cli\u003eVisual overlays\u003c/li\u003e\n\u003cli\u003eReal-time frame capture\u003c/li\u003e\n\u003cli\u003eAgentic video receipts\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003cstrong\u003eScreencast recording\u003c/strong\u003e — record video with precise start/stop control, as an alternative to the \u003ca href=\"https://playwright.dev/docs/api/class-browser#browser-new-context-option-record-video\"\u003e\u003ccode\u003erecordVideo\u003c/code\u003e\u003c/a\u003e option:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.screencast.start({ path: 'video.webm' });\r\n// ... perform actions ...\r\nawait page.screencast.stop();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003cstrong\u003eAction annotations\u003c/strong\u003e — enable built-in visual annotations that highlight interacted elements and display action titles during recording:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.screencast.showActions({ position: 'top-right' });\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-screencast#screencast-show-actions\"\u003escreencast.showActions()\u003c/a\u003e accepts \u003ccode\u003eposition\u003c/code\u003e (\u003ccode\u003e'top-left'\u003c/code\u003e, \u003ccode\u003e'top'\u003c/code\u003e, \u003ccode\u003e'top-right'\u003c/code\u003e, \u003ccode\u003e'bottom-left'\u003c/code\u003e, \u003ccode\u003e'bottom'\u003c/code\u003e, \u003ccode\u003e'bottom-right'\u003c/code\u003e), \u003ccode\u003eduration\u003c/code\u003e (ms per annotation), and \u003ccode\u003efontSize\u003c/code\u003e (px). Returns a disposable to stop showing actions.\u003c/p\u003e\n\u003cp\u003eAction annotations can also be enabled in test fixtures via the \u003ccode\u003evideo\u003c/code\u003e option:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003e// playwright.config.ts\r\nexport default defineConfig({\r\n  use: {\r\n    video: {\r\n      mode: 'on',\r\n      show: {\r\n        actions: { position: 'top-left' },\r\n        test: { position: 'top-right' },\r\n      },\r\n\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/microsoft/playwright/commit/d466ac5358cae058cdc75d2ae3ab3ad220042730\"\u003e\u003ccode\u003ed466ac5\u003c/code\u003e\u003c/a\u003e chore: mark v1.59.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40005\"\u003e#40005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/530e7e5f0021730948605a5788790d353d9cf444\"\u003e\u003ccode\u003e530e7e5\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/4004\"\u003e#4004\u003c/a\u003e): fix(cli): kill-all should kill dashboard\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9aa216c8d7f866e8a8fa94ca55d86e81a8f4decb\"\u003e\u003ccode\u003e9aa216c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39994\"\u003e#39994\u003c/a\u003e): Revert \u0026quot;fix(windows): hide console window when spawning ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/01b2b1533e0bfa1c582117e3ec109fcb57657747\"\u003e\u003ccode\u003e01b2b15\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39980\"\u003e#39980\u003c/a\u003e): chore: more release notes fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/a5cb6c9a2f52078de075413beb812e3180d195ba\"\u003e\u003ccode\u003ea5cb6c9\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39972\"\u003e#39972\u003c/a\u003e): chore: expose browser.bind and browser.unbind APIs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/99a17b58541798b03257c57a9e5589db2394f89e\"\u003e\u003ccode\u003e99a17b5\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39975\"\u003e#39975\u003c/a\u003e): chore: support opening .trace files via .link indirection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/43607c3b71d89445a6473708429eeecd6f571d6e\"\u003e\u003ccode\u003e43607c3\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39974\"\u003e#39974\u003c/a\u003e): chore(webkit): update Safari user-agent version to 26.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/62cabe19eb07e329086e5cb20441737cf51367d0\"\u003e\u003ccode\u003e62cabe1\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39969\"\u003e#39969\u003c/a\u003e): chore(npm): include all *.md from lib (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39970\"\u003e#39970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/0c65a759af337ba5143ebbe34afe4141482ce2d4\"\u003e\u003ccode\u003e0c65a75\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39968\"\u003e#39968\u003c/a\u003e): chore: screencast.showActions api\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f04155b09034c21719162146d6016de9933a2dbe\"\u003e\u003ccode\u003ef04155b\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39958\"\u003e#39958\u003c/a\u003e): chore: release notes for langs v1.59\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.59.1\"\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.5.0 to 25.6.0\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 `jsdom` from 29.0.1 to 29.1.0\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.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded basic support for the ratio CSS type. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003egetComputedStyle()\u003c/code\u003e sometimes returning outdated results after CSS was modified. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev29.0.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSignificantly improved and sped up \u003ccode\u003egetComputedStyle()\u003c/code\u003e. Computed value rules are now applied across a broader set of properties, and include fixes related to inheritance, defaulting keywords, custom properties, and color-related values such as \u003ccode\u003ecurrentcolor\u003c/code\u003e and system colors. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed CSS \u003ccode\u003e'background\u003c/code\u003e' and \u003ccode\u003e'border'\u003c/code\u003e shorthand parsing. (\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/5a3e88ea9b13d22457165c8296df7377ce243b24\"\u003e\u003ccode\u003e5a3e88e\u003c/code\u003e\u003c/a\u003e 29.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/73db2041724bb498ed55b4e863ffba7012e79675\"\u003e\u003ccode\u003e73db204\u003c/code\u003e\u003c/a\u003e Update dependencies and dev dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/a7168a579d26e43e8ea5599b7beb9b8f74c7f412\"\u003e\u003ccode\u003ea7168a5\u003c/code\u003e\u003c/a\u003e Support ratio CSS unit type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/15346e055b070d4e4ed890b68e832b6dba1b9132\"\u003e\u003ccode\u003e15346e0\u003c/code\u003e\u003c/a\u003e Fix style cache invalidation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/2a1e2cdb443e276b28ca49937cf7a7d6fa0a4806\"\u003e\u003ccode\u003e2a1e2cd\u003c/code\u003e\u003c/a\u003e 29.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/4097d66ba188805a408b5186b4b8036bf582b40f\"\u003e\u003ccode\u003e4097d66\u003c/code\u003e\u003c/a\u003e Resolve computed CSS values lazily in CSSStyleDeclaration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/cf5523ff92978fc08f7e40c0f44053946101d064\"\u003e\u003ccode\u003ecf5523f\u003c/code\u003e\u003c/a\u003e Add more test cases for nested color-mix with currentColor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/b33b61657e563ec841cb7a29c98ad236cc71c0b0\"\u003e\u003ccode\u003eb33b616\u003c/code\u003e\u003c/a\u003e Add test that getComputedStyle() works with !important\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/6bf559c416654641d3ca197982d646eac6de85ae\"\u003e\u003ccode\u003e6bf559c\u003c/code\u003e\u003c/a\u003e Add test for custom property inheritance in computed styles\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/68176571d00c50441fc3a428e1315fc1fb3b2bab\"\u003e\u003ccode\u003e6817657\u003c/code\u003e\u003c/a\u003e Fix border shorthand handling\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jsdom/jsdom/compare/v29.0.1...v29.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@esbuild/linux-x64` from 0.27.4 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evanw/esbuild/releases\"\u003e\u003ccode\u003e@​esbuild/linux-x64\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.28.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for \u003ccode\u003ewith { type: 'text' }\u003c/code\u003e imports (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4435\"\u003e#4435\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe \u003ca href=\"https://github.com/tc39/proposal-import-text\"\u003eimport text\u003c/a\u003e proposal has reached stage 3 in the TC39 process, which means that it's recommended for implementation. It has also already been implemented by \u003ca href=\"https://docs.deno.com/examples/importing_text/\"\u003eDeno\u003c/a\u003e and \u003ca href=\"https://bun.com/docs/guides/runtime/import-html\"\u003eBun\u003c/a\u003e. So with this release, esbuild also adds support for it. This behaves exactly the same as esbuild's existing \u003ca href=\"https://esbuild.github.io/content-types/#text\"\u003e\u003ccode\u003etext\u003c/code\u003e loader\u003c/a\u003e. Here's an example:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eimport string from './example.txt' with { type: 'text' }\nconsole.log(string)\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd integrity checks to fallback download path (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eInstalling esbuild via npm is somewhat complicated with several different edge cases (see \u003ca href=\"https://esbuild.github.io/getting-started/#additional-npm-flags\"\u003eesbuild's documentation\u003c/a\u003e for details). If the regular installation of esbuild's platform-specific package fails, esbuild's install script attempts to download the platform-specific package itself (first with the \u003ccode\u003enpm\u003c/code\u003e command, and then with a HTTP request to \u003ccode\u003eregistry.npmjs.org\u003c/code\u003e as a last resort).\u003c/p\u003e\n\u003cp\u003eThis last resort path previously didn't have any integrity checks. With this release, esbuild will now verify that the hash of the downloaded binary matches the expected hash for the current release. This means the hashes for all of esbuild's platform-specific binary packages will now be embedded in the top-level \u003ccode\u003eesbuild\u003c/code\u003e package. Hopefully this should work without any problems. But just in case, this change is being done as a breaking change release.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdate the Go compiler from 1.25.7 to 1.26.1\u003c/p\u003e\n\u003cp\u003eThis upgrade should not affect anything. However, there have been some significant internal changes to the Go compiler, so esbuild could potentially behave differently in certain edge cases:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eIt now uses the \u003ca href=\"https://go.dev/doc/go1.26#new-garbage-collector\"\u003enew garbage collector\u003c/a\u003e that comes with Go 1.26.\u003c/li\u003e\n\u003cli\u003eThe Go compiler is now more aggressive with allocating memory on the stack.\u003c/li\u003e\n\u003cli\u003eThe executable format that the Go linker uses has undergone several changes.\u003c/li\u003e\n\u003cli\u003eThe WebAssembly build now unconditionally makes use of the sign extension and non-trapping floating-point to integer conversion instructions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read the \u003ca href=\"https://go.dev/doc/go1.26\"\u003eGo 1.26 release notes\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.27.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix lowering of define semantics for TypeScript parameter properties (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4421\"\u003e#4421\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe previous release incorrectly generated class fields for TypeScript parameter properties even when the configured target environment does not support class fields. With this release, the generated class fields will now be correctly lowered in this case:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// Original code\nclass Foo {\n  constructor(public x = 1) {}\n  y = 2\n}\n\u003cp\u003e// Old output (with --loader=ts --target=es2021)\u003cbr /\u003e\nclass Foo {\u003cbr /\u003e\nconstructor(x = 1) {\u003cbr /\u003e\nthis.x = x;\u003cbr /\u003e\n__publicField(this, \u0026quot;y\u0026quot;, 2);\u003cbr /\u003e\n}\u003cbr /\u003e\nx;\u003cbr /\u003e\n}\u003c/p\u003e\n\u003cp\u003e// New output (with --loader=ts --target=es2021)\u003cbr /\u003e\nclass Foo {\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\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/evanw/esbuild/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​esbuild/linux-x64\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.28.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for \u003ccode\u003ewith { type: 'text' }\u003c/code\u003e imports (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4435\"\u003e#4435\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe \u003ca href=\"https://github.com/tc39/proposal-import-text\"\u003eimport text\u003c/a\u003e proposal has reached stage 3 in the TC39 process, which means that it's recommended for implementation. It has also already been implemented by \u003ca href=\"https://docs.deno.com/examples/importing_text/\"\u003eDeno\u003c/a\u003e and \u003ca href=\"https://bun.com/docs/guides/runtime/import-html\"\u003eBun\u003c/a\u003e. So with this release, esbuild also adds support for it. This behaves exactly the same as esbuild's existing \u003ca href=\"https://esbuild.github.io/content-types/#text\"\u003e\u003ccode\u003etext\u003c/code\u003e loader\u003c/a\u003e. Here's an example:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eimport string from './example.txt' with { type: 'text' }\nconsole.log(string)\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd integrity checks to fallback download path (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eInstalling esbuild via npm is somewhat complicated with several different edge cases (see \u003ca href=\"https://esbuild.github.io/getting-started/#additional-npm-flags\"\u003eesbuild's documentation\u003c/a\u003e for details). If the regular installation of esbuild's platform-specific package fails, esbuild's install script attempts to download the platform-specific package itself (first with the \u003ccode\u003enpm\u003c/code\u003e command, and then with a HTTP request to \u003ccode\u003eregistry.npmjs.org\u003c/code\u003e as a last resort).\u003c/p\u003e\n\u003cp\u003eThis last resort path previously didn't have any integrity checks. With this release, esbuild will now verify that the hash of the downloaded binary matches the expected hash for the current release. This means the hashes for all of esbuild's platform-specific binary packages will now be embedded in the top-level \u003ccode\u003eesbuild\u003c/code\u003e package. Hopefully this should work without any problems. But just in case, this change is being done as a breaking change release.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdate the Go compiler from 1.25.7 to 1.26.1\u003c/p\u003e\n\u003cp\u003eThis upgrade should not affect anything. However, there have been some significant internal changes to the Go compiler, so esbuild could potentially behave differently in certain edge cases:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eIt now uses the \u003ca href=\"https://go.dev/doc/go1.26#new-garbage-collector\"\u003enew garbage collector\u003c/a\u003e that comes with Go 1.26.\u003c/li\u003e\n\u003cli\u003eThe Go compiler is now more aggressive with allocating memory on the stack.\u003c/li\u003e\n\u003cli\u003eThe executable format that the Go linker uses has undergone several changes.\u003c/li\u003e\n\u003cli\u003eThe WebAssembly build now unconditionally makes use of the sign extension and non-trapping floating-point to integer conversion instructions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read the \u003ca href=\"https://go.dev/doc/go1.26\"\u003eGo 1.26 release notes\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.27.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix lowering of define semantics for TypeScript parameter properties (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4421\"\u003e#4421\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe previous release incorrectly generated class fields for TypeScript parameter properties even when the configured target environment does not support class fields. With this release, the generated class fields will now be correctly lowered in this case:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// Original code\nclass Foo {\n  constructor(public x = 1) {}\n  y = 2\n}\n\u003cp\u003e// Old output (with --loader=ts --target=es2021)\u003cbr /\u003e\nclass Foo {\u003cbr /\u003e\nconstructor(x = 1) {\u003cbr /\u003e\nthis.x = x;\u003cbr /\u003e\n__publicField(this, \u0026quot;y\u0026quot;, 2);\u003cbr /\u003e\n}\u003cbr /\u003e\nx;\u003cbr /\u003e\n}\u003c/p\u003e\n\u003cp\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/6a794dff68e6a43539f6da671e3080efdf11ca70\"\u003e\u003ccode\u003e6a794df\u003c/code\u003e\u003c/a\u003e publish 0.28.0 to npm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/64ee0ea63b2ff303caafc9610c388dc72c882c23\"\u003e\u003ccode\u003e64ee0ea\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4435\"\u003e#4435\u003c/a\u003e: support \u003ccode\u003ewith { type: text }\u003c/code\u003e imports\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/ef65aeeaacdb71eade186f888975b1de89574314\"\u003e\u003ccode\u003eef65aee\u003c/code\u003e\u003c/a\u003e fix sort order in \u003ccode\u003esnapshots_packagejson.txt\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/1a26a8ecbc39aaf1379c524a0274a08fbcbed655\"\u003e\u003ccode\u003e1a26a8e\u003c/code\u003e\u003c/a\u003e try to fix \u003ccode\u003etest-old-ts\u003c/code\u003e, also shuffle CI tasks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/556ce6c1fc00d7c0917fbfada01ed8e5251bc510\"\u003e\u003ccode\u003e556ce6c\u003c/code\u003e\u003c/a\u003e use \u003ccode\u003e''\u003c/code\u003e instead of \u003ccode\u003enull\u003c/code\u003e to omit build hashes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/8e675a81a473ea69a46a69792f1386bb110dd877\"\u003e\u003ccode\u003e8e675a8\u003c/code\u003e\u003c/a\u003e ci: allow missing binary hashes for tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/7067763b904fe8a522fa840a4a48c5fbd4c395e0\"\u003e\u003ccode\u003e7067763\u003c/code\u003e\u003c/a\u003e Reapply \u0026quot;update go 1.25.7 =\u0026gt; 1.26.1\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/39473a952ab3b450d0578b698a8b8d2a02332e0d\"\u003e\u003ccode\u003e39473a9\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4343\"\u003e#4343\u003c/a\u003e: integrity check for binary download\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/2025c9ff6ab15ba6b0f9d074fd732250cc46e4a3\"\u003e\u003ccode\u003e2025c9f\u003c/code\u003e\u003c/a\u003e publish 0.27.7 to npm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/c6b586e4904f47e8d5f783a2813660c13e2672e7\"\u003e\u003ccode\u003ec6b586e\u003c/code\u003e\u003c/a\u003e fix typo in \u003ccode\u003eMakefile\u003c/code\u003e for \u003ccode\u003e@esbuild/win32-x64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/evanw/esbuild/compare/v0.27.4...v0.28.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@next/swc-linux-x64-gnu` from 16.2.1 to 16.2.4\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\"\u003e\u003ccode\u003e@​next/swc-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.2.4\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release is backporting 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\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003echore: Bump reqwest to 0.13.2 (Fixes Google Fonts with Turbopack for Windows on ARM64) (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92713\"\u003e#92713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTurbopack: fix filesystem watcher config not applying follow_symlinks(false) (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92631\"\u003e#92631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eScope Safari ?ts= cache-buster to CSS/font assets only (Pages Router) (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92580\"\u003e#92580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler: Support boolean and number primtives in next.config defines (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92731\"\u003e#92731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eturbo-tasks: Fix recomputation loop by allowing cell cleanup on error during recomputation (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92725\"\u003e#92725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTurbopack: shorter error for ChunkGroupInfo::get_index_of (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92814\"\u003e#92814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTurbopack: shorter error message for ModuleBatchesGraph::get_entry_index (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92828\"\u003e#92828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding more system info to the 'initialize project' trace (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92427\"\u003e#92427\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCredits\u003c/h3\u003e\n\u003cp\u003eHuge thanks to \u003ca href=\"https://github.com/Badbird5907\"\u003e\u003ccode\u003e@​Badbird5907\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukesandberg\"\u003e\u003ccode\u003e@​lukesandberg\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/andrewimm\"\u003e\u003ccode\u003e@​andrewimm\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sokra\"\u003e\u003ccode\u003e@​sokra\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/mischnic\"\u003e\u003ccode\u003e@​mischnic\u003c/code\u003e\u003c/a\u003e for helping!\u003c/p\u003e\n\u003ch2\u003ev16.2.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release is backporting security and bug fixes. For more information about the fixed security vulnerability, please see \u003ca href=\"https://vercel.com/changelog/summary-of-cve-2026-23869\"\u003ehttps://vercel.com/changelog/summary-of-cve-2026-23869\u003c/a\u003e. The release does \u003cstrong\u003enot\u003c/strong\u003e include all pending features/changes on canary.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure app-page reports stale ISR revalidation errors via onRequestError (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92282\"\u003e#92282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix [Bug]: manifest.ts breaks HMR in Next.js 16.2 (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/91981\"\u003e#91981\u003c/a\u003e through \u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92273\"\u003e#92273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeduplicate output assets and detect content conflicts on emit (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92292\"\u003e#92292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix styled-jsx race condition: styles lost due to concurrent rendering (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92459\"\u003e#92459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eturbo-tasks-backend: stability fixes for task cancellation and error handling (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92254\"\u003e#92254\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCredits\u003c/h3\u003e\n\u003cp\u003eHuge thanks to \u003ca href=\"https://github.com/icyJoseph\"\u003e\u003ccode\u003e@​icyJoseph\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sokra\"\u003e\u003ccode\u003e@​sokra\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/wbinnssmith\"\u003e\u003ccode\u003e@​wbinnssmith\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/ztanner\"\u003e\u003ccode\u003e@​ztanner\u003c/code\u003e\u003c/a\u003e for helping!\u003c/p\u003e\n\u003ch2\u003ev16.2.2\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release is backporting 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\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebackport: Move expanded adapters docs to API reference (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92115\"\u003e#92115\u003c/a\u003e) (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92129\"\u003e#92129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBackport: TypeScript v6 deprecations for baseUrl and moduleResolution (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92130\"\u003e#92130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[create-next-app] Skip interactive prompts when CLI flags are provided (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/91840\"\u003e#91840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003enext.config.js: Accept an option for serverFastRefresh (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/91968\"\u003e#91968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTurbopack: enable server HMR for app route handlers (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/91466\"\u003e#91466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTurbopack: exclude metadata routes from server HMR (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92034\"\u003e#92034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix CI for glibc linux builds\u003c/li\u003e\n\u003cli\u003eBackport: disable bmi2 in qfilter \u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92177\"\u003e#92177\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[backport] Fix CSS HMR on Safari (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92174\"\u003e#92174\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\u003eSee full diff in \u003ca href=\"https://github.com/vercel/next.js/commits/v16.2.4/crates/next-napi-bindings/npm/linux-x64-gnu\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.1 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.2\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Vite 8 in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19790\"\u003e#19790\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDon't crash when candidates contain prototype properties like \u003ccode\u003erow-constructor\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19725\"\u003e#19725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalize \u003ccode\u003ecalc(var(--spacing)*…)\u003c/code\u003e expressions into \u003ccode\u003e--spacing(…)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19769\"\u003e#19769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash in canonicalization step when handling utilities containing \u003ccode\u003e@property\u003c/code\u003e at-rules (e.g. \u003ccode\u003eshadow-sm border\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19727\"\u003e#19727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip full reload for server only modules scanned by client CSS when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19745\"\u003e#19745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove canonicalization for bare values exceeding default spacing scale suggestions (e.g. \u003ccode\u003ew-1234 h-1234\u003c/code\u003e → \u003ccode\u003esize-1234\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19809\"\u003e#19809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix canonicalization resulting in empty list (e.g. \u003ccode\u003ew-5 h-5 size-5\u003c/code\u003e → \u003ccode\u003e''\u003c/code\u003e instead of \u003ccode\u003esize-5\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19812\"\u003e#19812\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.2] - 2026-03-18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDon't crash when candidates contain prototype properties like \u003ccode\u003erow-constructor\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19725\"\u003e#19725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalize \u003ccode\u003ecalc(var(--spacing)*…)\u003c/code\u003e expressions into \u003ccode\u003e--spacing(…)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19769\"\u003e#19769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash in canonicalization step when handling utilities containing \u003ccode\u003e@property\u003c/code\u003e at-rules (e.g. \u003ccode\u003eshadow-sm border\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19727\"\u003e#19727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip full reload for server only modules scanned by client CSS when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19745\"\u003e#19745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for Vite 8 in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19790\"\u003e#19790\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove canonicalization for bare values exceeding default spacing scale suggestions (e.g. \u003ccode\u003ew-1234 h-1234\u003c/code\u003e → \u003ccode\u003esize-1234\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19809\"\u003e#19809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix canonicalization resulting in empty list (e.g. \u003ccode\u003ew-5 h-5 size-5\u003c/code\u003e → \u003ccode\u003e''\u003c/code\u003e instead of \u003ccode\u003esize-5\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19812\"\u003e#19812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve tsconfig paths to allow for \u003ccode\u003e@import '@/path/to/file';\u003c/code\u003e when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19803\"\u003e#19803\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\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/crates/node/npm/linux-x64-gnu/issues/19821\"\u003e#19821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@rollup/rollup-linux-x64-gnu` from 4.60.0 to 4.60.2\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\u003ccode\u003e@​rollup/rollup-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003ch2\u003ev4.60.1\u003c/h2\u003e\n\u003ch2\u003e4.60.1\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-03-30\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResolve a situation where side effect imports could be dropped due to a caching issue (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6286\"\u003e#6286\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/6286\"\u003e#6286\u003c/a\u003e: fix: skip dropping side-effects on namespaceReexportsByName cache hit (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6274\"\u003e#6274\u003c/a\u003e) (\u003ca href=\"https://github.com/littlegrayss\"\u003e\u003ccode\u003e@​littlegrayss\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TrickyPi\"\u003e\u003ccode\u003e@​TrickyPi\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6317\"\u003e#6317\u003c/a\u003e: chore(deps): pin dependencies (\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/6318\"\u003e#6318\u003c/a\u003e: chore(deps): update msys2/setup-msys2 digest to cafece8 (\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/6319\"\u003e#6319\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], \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/6320\"\u003e#6320\u003c/a\u003e: chore(deps): pin dependency typescript to v5 (\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/6321\"\u003e#6321\u003c/a\u003e: chore(deps): update openharmony-rs/setup-ohos-sdk action to v1 (\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/6322\"\u003e#6322\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/6323\"\u003e#6323\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/6324\"\u003e#6324\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/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\u003ccode\u003e@​rollup/rollup-linux-x64-gnu\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003ccod...\n\n_Description has been truncated_","html_url":"https://github.com/fastxyz/marketplace/pull/64","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastxyz%2Fmarketplace/issues/64","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/64/packages"},{"uuid":"4332241485","node_id":"PR_kwDORIptPM7VyD_N","number":82,"state":"open","title":"deps(npm): bump the tailwind group with 16 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-04-26T23:09:39.000Z","updated_at":"2026-04-26T23:09:40.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(npm): bump","group_name":"tailwind","update_count":16,"packages":[{"name":"@tailwindcss/postcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"tailwindcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/node","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-android-arm64","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-arm64","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-x64","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-freebsd-x64","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm-gnueabihf","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-musl","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-musl","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-wasm32-wasi","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-arm64-msvc","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-x64-msvc","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the tailwind group with 16 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.2` | `4.2.4` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/node](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-android-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/android-arm64) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-darwin-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-arm64) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-darwin-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-x64) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-freebsd-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/freebsd-x64) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm-gnueabihf](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm-gnueabihf) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-gnu) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-musl) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-x64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-musl) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-wasm32-wasi](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-win32-arm64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-arm64-msvc) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-win32-x64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-x64-msvc) | `4.2.2` | `4.2.4` |\n\nUpdates `@tailwindcss/postcss` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4527123f68f4169a1236d3d6dd45d91540691ee9\"\u003e\u003ccode\u003e4527123\u003c/code\u003e\u003c/a\u003e docs(postcss): remove duplicated optimize example from README (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19938\"\u003e#19938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/aad601711fd43d5bf2966a8c30767a6945aaf451\"\u003e\u003ccode\u003eaad6017\u003c/code\u003e\u003c/a\u003e docs/fix-lightning-css-typo-postcss-readme (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19913\"\u003e#19913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/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` from 4.2.2 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003etailwindcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/issues/19948\"\u003e#19948\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/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/df6209ab8b957e56e6e00042a3e4080c14a072ea\"\u003e\u003ccode\u003edf6209a\u003c/code\u003e\u003c/a\u003e Canonicalize negative arbitrary values (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52fd421cc941aad650db769f04b77d08c56951df\"\u003e\u003ccode\u003e52fd421\u003c/code\u003e\u003c/a\u003e Small refactor of canonicalization tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19851\"\u003e#19851\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/c385fd36bcce707a02c229ebeb66ea88e12eb041\"\u003e\u003ccode\u003ec385fd3\u003c/code\u003e\u003c/a\u003e use \u003ccode\u003etest.each\u003c/code\u003e instead of manual loop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/0d6e038889f49a809a4077ef7badc7d43184cd42\"\u003e\u003ccode\u003e0d6e038\u003c/code\u003e\u003c/a\u003e fix index in test name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/88a2d22c2fdb65c5f8c3b2f68db9713f8bf2e656\"\u003e\u003ccode\u003e88a2d22\u003c/code\u003e\u003c/a\u003e Add more canonicalization rules for deprecated utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2c1ef9eb2564f2c83df970eb9f68c19d340c02e5\"\u003e\u003ccode\u003e2c1ef9e\u003c/code\u003e\u003c/a\u003e Use \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/28d526859dfd1efe204c8f037c3fe472d9b5d08e\"\u003e\u003ccode\u003e28d5268\u003c/code\u003e\u003c/a\u003e Collapse more utilities by expanding their declarations (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/b55d96002ce4516c5158ad3565229267b948c1ac\"\u003e\u003ccode\u003eb55d960\u003c/code\u003e\u003c/a\u003e fix(canonicalize): collapse arbitrary values into shorthand utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/packages/tailwindcss\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/node` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/node\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/node\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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-node/issues/19948\"\u003e#19948\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-node/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/998a6be85d4cab9cbf59b184443cd02c1aa175cc\"\u003e\u003ccode\u003e998a6be\u003c/code\u003e\u003c/a\u003e format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/5a835e1728c91b73da47de9831187ea4d83cf791\"\u003e\u003ccode\u003e5a835e1\u003c/code\u003e\u003c/a\u003e support NODE_PATH in standalone build (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node/issues/19617\"\u003e#19617\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/packages/@tailwindcss-node\"\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/node\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/issues/19948\"\u003e#19948\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/crates/node/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node\"\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/oxide\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-android-arm64` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-android-arm64\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide-android-arm64\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/npm/android-arm64/issues/19948\"\u003e#19948\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/crates/node/npm/android-arm64/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/android-arm64\"\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/oxide-android-arm64\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-darwin-arm64` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-darwin-arm64\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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. ...\n\n_Description has been truncated_","html_url":"https://github.com/openctemio/ui/pull/82","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/openctemio%2Fui/issues/82","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/82/packages"},{"uuid":"4329889618","node_id":"PR_kwDOSMuiFs7VrO0B","number":4,"state":"open","title":"build(deps): bump the minor-and-patch group with 8 updates","user":"dependabot[bot]","labels":["web","sdk","dependencies"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-26T03:03:02.000Z","updated_at":"2026-04-26T09:01:36.288Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"minor-and-patch","update_count":8,"packages":[{"name":"@commitlint/cli","old_version":"20.5.0","new_version":"20.5.2","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.58.2","new_version":"8.59.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.58.2","new_version":"8.59.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-eslint","old_version":"8.58.2","new_version":"8.59.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@tailwindcss/postcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"tailwindcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@vitest/coverage-v8","old_version":"4.1.4","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"}],"path":null,"ecosystem":"npm"},"body":"Bumps the minor-and-patch group with 8 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) | `20.5.0` | `20.5.2` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.58.2` | `8.59.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.58.2` | `8.59.0` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.58.2` | `8.59.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.2` | `4.2.4` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.2` | `4.2.4` |\n| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.1.4` | `4.1.5` |\n\nUpdates `@commitlint/cli` from 20.5.0 to 20.5.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.5.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.5.1...v20.5.2\"\u003e20.5.2\u003c/a\u003e (2026-04-25)\u003c/h2\u003e\n\u003cp\u003eJust minor dep updates before the next breaking change\u003c/p\u003e\n\u003ch2\u003eChore \u0026amp; Docs\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: remove codesandbox ci integration by \u003ca href=\"https://github.com/escapedcat\"\u003e\u003ccode\u003e@​escapedcat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4680\"\u003econventional-changelog/commitlint#4680\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: add Windows UTF-8 encoding note to getting started guide by \u003ca href=\"https://github.com/Chessing234\"\u003e\u003ccode\u003e@​Chessing234\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4699\"\u003econventional-changelog/commitlint#4699\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: improve parserPreset documentation with examples and options reference by \u003ca href=\"https://github.com/Chessing234\"\u003e\u003ccode\u003e@​Chessing234\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4700\"\u003econventional-changelog/commitlint#4700\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix subject-case rule default from 'always' to 'never' by \u003ca href=\"https://github.com/Chessing234\"\u003e\u003ccode\u003e@​Chessing234\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4703\"\u003econventional-changelog/commitlint#4703\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/Chessing234\"\u003e\u003ccode\u003e@​Chessing234\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4699\"\u003econventional-changelog/commitlint#4699\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.5.1...v20.5.2\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v20.5.1...v20.5.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev20.5.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.5.0...v20.5.1\"\u003e20.5.1\u003c/a\u003e (2026-03-31)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix(cz-commitlint): add VS16 to single character emojis by \u003ca href=\"https://github.com/mrt181\"\u003e\u003ccode\u003e@​mrt181\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4666\"\u003econventional-changelog/commitlint#4666\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cz-commitlint): handle modifiers correctly by \u003ca href=\"https://github.com/mrt181\"\u003e\u003ccode\u003e@​mrt181\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4667\"\u003econventional-changelog/commitlint#4667\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eReverts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert \u0026quot;fix: update dependency global-directory to v5 (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli/issues/4671\"\u003e#4671\u003c/a\u003e)\u0026quot; by \u003ca href=\"https://github.com/escapedcat\"\u003e\u003ccode\u003e@​escapedcat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4677\"\u003econventional-changelog/commitlint#4677\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eCore \u0026amp; co\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: deps and CI improvements by \u003ca href=\"https://github.com/escapedcat\"\u003e\u003ccode\u003e@​escapedcat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4660\"\u003econventional-changelog/commitlint#4660\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: restore push on all branches, avoid duplicate runs by \u003ca href=\"https://github.com/escapedcat\"\u003e\u003ccode\u003e@​escapedcat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4665\"\u003econventional-changelog/commitlint#4665\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.5.0...v20.5.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v20.5.0...v20.5.1\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/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.5.1...v20.5.2\"\u003e20.5.2\u003c/a\u003e (2026-04-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/cli\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/conventional-changelog/commitlint/commit/7fe86b28f0779cce8d8459bdcc83c849936a1b80\"\u003e\u003ccode\u003e7fe86b2\u003c/code\u003e\u003c/a\u003e v20.5.2\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.5.2/@commitlint/cli\"\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.58.2 to 8.59.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\u003ccode\u003e@​typescript-eslint/eslint-plugin\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e\u003ccode\u003e@​typescript-eslint/eslint-plugin\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning 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/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/cfca5506346503830ce348aabe8e82fe28a8e687\"\u003e\u003ccode\u003ecfca550\u003c/code\u003e\u003c/a\u003e feat(eslint-plugin): [no-unnecessary-type-assertion] report more cases based ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/6d599b4769e22ed634236980d7da1e23e3f073a6\"\u003e\u003ccode\u003e6d599b4\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in ret...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/33c81691ec8f240209d8662dd2ca72602731e5b0\"\u003e\u003ccode\u003e33c8169\u003c/code\u003e\u003c/a\u003e chore: fix cspell violations in code blocks (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12167\"\u003e#12167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.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.58.2 to 8.59.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\u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e\u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\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/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.0/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript-eslint` from 8.58.2 to 8.59.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003etypescript-eslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md\"\u003etypescript-eslint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\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/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.0/packages/typescript-eslint\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/postcss` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4527123f68f4169a1236d3d6dd45d91540691ee9\"\u003e\u003ccode\u003e4527123\u003c/code\u003e\u003c/a\u003e docs(postcss): remove duplicated optimize example from README (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19938\"\u003e#19938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/aad601711fd43d5bf2966a8c30767a6945aaf451\"\u003e\u003ccode\u003eaad6017\u003c/code\u003e\u003c/a\u003e docs/fix-lightning-css-typo-postcss-readme (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19913\"\u003e#19913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/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` from 4.2.2 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003etailwindcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/issues/19948\"\u003e#19948\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/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/df6209ab8b957e56e6e00042a3e4080c14a072ea\"\u003e\u003ccode\u003edf6209a\u003c/code\u003e\u003c/a\u003e Canonicalize negative arbitrary values (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52fd421cc941aad650db769f04b77d08c56951df\"\u003e\u003ccode\u003e52fd421\u003c/code\u003e\u003c/a\u003e Small refactor of canonicalization tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19851\"\u003e#19851\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/c385fd36bcce707a02c229ebeb66ea88e12eb041\"\u003e\u003ccode\u003ec385fd3\u003c/code\u003e\u003c/a\u003e use \u003ccode\u003etest.each\u003c/code\u003e instead of manual loop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/0d6e038889f49a809a4077ef7badc7d43184cd42\"\u003e\u003ccode\u003e0d6e038\u003c/code\u003e\u003c/a\u003e fix index in test name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/88a2d22c2fdb65c5f8c3b2f68db9713f8bf2e656\"\u003e\u003ccode\u003e88a2d22\u003c/code\u003e\u003c/a\u003e Add more canonicalization rules for deprecated utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2c1ef9eb2564f2c83df970eb9f68c19d340c02e5\"\u003e\u003ccode\u003e2c1ef9e\u003c/code\u003e\u003c/a\u003e Use \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/28d526859dfd1efe204c8f037c3fe472d9b5d08e\"\u003e\u003ccode\u003e28d5268\u003c/code\u003e\u003c/a\u003e Collapse more utilities by expanding their declarations (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/b55d96002ce4516c5158ad3565229267b948c1ac\"\u003e\u003ccode\u003eb55d960\u003c/code\u003e\u003c/a\u003e fix(canonicalize): collapse arbitrary values into shorthand utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/packages/tailwindcss\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@vitest/coverage-v8` from 4.1.4 to 4.1.5\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\u003ccode\u003e@​vitest/coverage-v8\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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/e399846850fedf10b8228cbe46a419628998acd9\"\u003e\u003ccode\u003ee399846\u003c/code\u003e\u003c/a\u003e chore: release v4.1.5\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vitest-dev/vitest/commits/v4.1.5/packages/coverage-v8\"\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/pogeku/Cards402/pull/4","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/pogeku%2FCards402/issues/4","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4/packages"},{"uuid":"4325126206","node_id":"PR_kwDORPmCMc7VceGq","number":52,"state":"closed","title":"chore(deps): bump @tailwindcss/oxide-linux-x64-gnu from 4.2.2 to 4.2.4 in the npm-minor-patch group across 1 directory","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-26T01:04:14.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-24T19:30:22.000Z","updated_at":"2026-04-26T01:04:21.000Z","time_to_close":106432,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":"the npm-minor-patch group across 1 directory","ecosystem":"npm"},"body":"Bumps the npm-minor-patch group with 1 update in the / directory: [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu).\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.2.2\u0026new-version=4.2.4)](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 \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/binarygary/gratitude/pull/52","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/binarygary%2Fgratitude/issues/52","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/52/packages"}],"issue_packages":[{"old_version":"4.2.4","new_version":"4.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-31T02:24:37.000Z","version_change":"4.2.4 → 4.3.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":"4.2.2","new_version":"4.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-25T12:52:23.000Z","version_change":"4.2.2 → 4.3.0","issue":{"uuid":"4517030321","node_id":"PR_kwDOR1gFYs7fC3cm","number":198,"state":"closed","title":"chore(deps): bump the npm-frontend group across 1 directory with 14 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":"2026-05-26T00:49:08.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-25T12:52:23.000Z","updated_at":"2026-05-26T00:49:18.000Z","time_to_close":43005,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"npm-frontend","update_count":14,"packages":[{"name":"@apollo/client","old_version":"3.14.1","new_version":"4.2.0","repository_url":"https://github.com/apollographql/apollo-client"},{"name":"@tiptap/pm","old_version":"2.27.2","new_version":"3.23.6","repository_url":"https://github.com/ueberdosis/tiptap"},{"name":"@tiptap/react","old_version":"2.27.2","new_version":"3.23.6","repository_url":"https://github.com/ueberdosis/tiptap"},{"name":"@tiptap/starter-kit","old_version":"2.27.2","new_version":"3.23.6","repository_url":"https://github.com/ueberdosis/tiptap"},{"name":"lucide-react","old_version":"0.562.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"@eslint/js","old_version":"9.39.4","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@types/node","old_version":"24.12.4","new_version":"25.9.1","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"eslint","old_version":"9.39.4","new_version":"10.4.0","repository_url":"https://github.com/eslint/eslint"},{"name":"globals","old_version":"16.5.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"jsdom","old_version":"26.1.0","new_version":"29.1.1","repository_url":"https://github.com/jsdom/jsdom"},{"name":"vitest","old_version":"3.2.4","new_version":"4.1.7","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@rolldown/binding-linux-x64-gnu","old_version":"1.0.0-rc.15","new_version":"1.0.2","repository_url":"https://github.com/rolldown/rolldown"},{"name":"@rollup/rollup-linux-x64-gnu","old_version":"4.60.2","new_version":"4.60.4","repository_url":"https://github.com/rollup/rollup"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the npm-frontend group with 14 updates in the /frontend directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@apollo/client](https://github.com/apollographql/apollo-client) | `3.14.1` | `4.2.0` |\n| [@tiptap/pm](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm) | `2.27.2` | `3.23.6` |\n| [@tiptap/react](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react) | `2.27.2` | `3.23.6` |\n| [@tiptap/starter-kit](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit) | `2.27.2` | `3.23.6` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.562.0` | `1.16.0` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.4` | `10.0.1` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `24.12.4` | `25.9.1` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.4` | `10.4.0` |\n| [globals](https://github.com/sindresorhus/globals) | `16.5.0` | `17.6.0` |\n| [jsdom](https://github.com/jsdom/jsdom) | `26.1.0` | `29.1.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `3.2.4` | `4.1.7` |\n| [@rolldown/binding-linux-x64-gnu](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown) | `1.0.0-rc.15` | `1.0.2` |\n| [@rollup/rollup-linux-x64-gnu](https://github.com/rollup/rollup) | `4.60.2` | `4.60.4` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.2` | `4.3.0` |\n\n\nUpdates `@apollo/client` from 3.14.1 to 4.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apollographql/apollo-client/releases\"\u003e@​apollo/client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​apollo/client\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.2.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/apollographql/apollo-client/pull/13132\"\u003e#13132\u003c/a\u003e \u003ca href=\"https://github.com/apollographql/apollo-client/commit/f3ce805425d10a9666218a8e109288a2d46dcab1\"\u003e\u003ccode\u003ef3ce805\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/phryneas\"\u003e\u003ccode\u003e@​phryneas\u003c/code\u003e\u003c/a\u003e! - Introduce \u0026quot;classic\u0026quot; and \u0026quot;modern\u0026quot; method and hook signatures.\u003c/p\u003e\n\u003cp\u003eApollo Client 4.2 introduces two signature styles for methods and hooks. All signatures previously present are now \u0026quot;classic\u0026quot; signatures, and a new set of \u0026quot;modern\u0026quot; signatures are added alongside them.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eClassic signatures\u003c/strong\u003e are the default and are identical to the signatures before Apollo Client 4.2, preserving backward compatibility. Classic signatures still work with manually specified TypeScript generics (e.g., \u003ccode\u003euseSuspenseQuery\u0026lt;MyData\u0026gt;(...)\u003c/code\u003e). However, manually specifying generics has been discouraged for a long time—instead, we recommend using \u003ccode\u003eTypedDocumentNode\u003c/code\u003e to automatically infer types, which provides more accurate results without any manual annotations.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eModern signatures\u003c/strong\u003e automatically incorporate your declared \u003ccode\u003edefaultOptions\u003c/code\u003e into return types, providing more accurate types. Modern signatures infer types from the document node and do not support manually passing generic type arguments; TypeScript will produce a type error if you attempt to do so.\u003c/p\u003e\n\u003cp\u003eMethods and hooks automatically switch to modern signatures the moment any non-optional property is declared in \u003ccode\u003eDeclareDefaultOptions\u003c/code\u003e. The switch happens across all methods and hooks globally:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  namespace ApolloClient {\n    namespace DeclareDefaultOptions {\n      interface WatchQuery {\n        errorPolicy: \u0026quot;all\u0026quot;; // non-optional → modern signatures activated automatically\n      }\n    }\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eUsers can also manually switch to modern signatures without declaring any \u003ccode\u003edefaultOptions\u003c/code\u003e, for example when wanting accurate type inference without relying on global \u003ccode\u003edefaultOptions\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  export interface TypeOverrides {\n    signatureStyle: \u0026quot;modern\u0026quot;;\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eUsers can do a global \u003ccode\u003eDeclareDefaultOptions\u003c/code\u003e type augmentation and then manually switch back to \u0026quot;classic\u0026quot; for migration purposes:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  export interface TypeOverrides {\n    signatureStyle: \u0026quot;classic\u0026quot;;\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apollographql/apollo-client/blob/main/CHANGELOG.md\"\u003e@​apollo/client's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.2.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/apollographql/apollo-client/pull/13132\"\u003e#13132\u003c/a\u003e \u003ca href=\"https://github.com/apollographql/apollo-client/commit/f3ce805425d10a9666218a8e109288a2d46dcab1\"\u003e\u003ccode\u003ef3ce805\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/phryneas\"\u003e\u003ccode\u003e@​phryneas\u003c/code\u003e\u003c/a\u003e! - Introduce \u0026quot;classic\u0026quot; and \u0026quot;modern\u0026quot; method and hook signatures.\u003c/p\u003e\n\u003cp\u003eApollo Client 4.2 introduces two signature styles for methods and hooks. All signatures previously present are now \u0026quot;classic\u0026quot; signatures, and a new set of \u0026quot;modern\u0026quot; signatures are added alongside them.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eClassic signatures\u003c/strong\u003e are the default and are identical to the signatures before Apollo Client 4.2, preserving backward compatibility. Classic signatures still work with manually specified TypeScript generics (e.g., \u003ccode\u003euseSuspenseQuery\u0026lt;MyData\u0026gt;(...)\u003c/code\u003e). However, manually specifying generics has been discouraged for a long time—instead, we recommend using \u003ccode\u003eTypedDocumentNode\u003c/code\u003e to automatically infer types, which provides more accurate results without any manual annotations.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eModern signatures\u003c/strong\u003e automatically incorporate your declared \u003ccode\u003edefaultOptions\u003c/code\u003e into return types, providing more accurate types. Modern signatures infer types from the document node and do not support manually passing generic type arguments; TypeScript will produce a type error if you attempt to do so.\u003c/p\u003e\n\u003cp\u003eMethods and hooks automatically switch to modern signatures the moment any non-optional property is declared in \u003ccode\u003eDeclareDefaultOptions\u003c/code\u003e. The switch happens across all methods and hooks globally:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  namespace ApolloClient {\n    namespace DeclareDefaultOptions {\n      interface WatchQuery {\n        errorPolicy: \u0026quot;all\u0026quot;; // non-optional → modern signatures activated automatically\n      }\n    }\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eUsers can also manually switch to modern signatures without declaring any \u003ccode\u003edefaultOptions\u003c/code\u003e, for example when wanting accurate type inference without relying on global \u003ccode\u003edefaultOptions\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  export interface TypeOverrides {\n    signatureStyle: \u0026quot;modern\u0026quot;;\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eUsers can do a global \u003ccode\u003eDeclareDefaultOptions\u003c/code\u003e type augmentation and then manually switch back to \u0026quot;classic\u0026quot; for migration purposes:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// apollo.d.ts\nimport \u0026quot;@apollo/client\u0026quot;;\ndeclare module \u0026quot;@apollo/client\u0026quot; {\n  export interface TypeOverrides {\n    signatureStyle: \u0026quot;classic\u0026quot;;\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/e010bdd239b5c10415d4b70ca791467cde12fc88\"\u003e\u003ccode\u003ee010bdd\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13241\"\u003e#13241\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/9c4c01a640b43bfb47bd52b25d5881c4ad7bec71\"\u003e\u003ccode\u003e9c4c01a\u003c/code\u003e\u003c/a\u003e Release 4.2 (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13129\"\u003e#13129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/222838e99bc6054120cc1f881bb225b1ef049de9\"\u003e\u003ccode\u003e222838e\u003c/code\u003e\u003c/a\u003e Exit prerelease mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/7d3a533c811a8423536ceeebccc06413ded5b6a3\"\u003e\u003ccode\u003e7d3a533\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into release-4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/f20d591bbf74cb4f0d87ec9a14b93a59fe46b039\"\u003e\u003ccode\u003ef20d591\u003c/code\u003e\u003c/a\u003e chore(deps): update actions/create-github-app-token digest to d72941d (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13239\"\u003e#13239\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/d4a28b6142e47164c8a24bd8c05a8aa3f1ce4eee\"\u003e\u003ccode\u003ed4a28b6\u003c/code\u003e\u003c/a\u003e chore(deps): pin dependencies (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13237\"\u003e#13237\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/c1f39cf5402b052ab92886a1857840a745aee02b\"\u003e\u003ccode\u003ec1f39cf\u003c/code\u003e\u003c/a\u003e ci: pin Actions@SHA and disable cache on workflows with elevated OIDC permiss...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/511048b7bd6253a38a6b7ebe58e9674a39c74273\"\u003e\u003ccode\u003e511048b\u003c/code\u003e\u003c/a\u003e Event-based refetching docs (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13228\"\u003e#13228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/d1f68f1a5fdb7c6915a72b2426cad373a0526c06\"\u003e\u003ccode\u003ed1f68f1\u003c/code\u003e\u003c/a\u003e Version Packages (rc) (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13234\"\u003e#13234\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apollographql/apollo-client/commit/f1b541fed4111028b6842727178288156582e669\"\u003e\u003ccode\u003ef1b541f\u003c/code\u003e\u003c/a\u003e Prepare for rc release (\u003ca href=\"https://redirect.github.com/apollographql/apollo-client/issues/13232\"\u003e#13232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/apollographql/apollo-client/compare/v3.14.1...@apollo/client@4.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tiptap/pm` from 2.27.2 to 3.23.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/releases\"\u003e@​tiptap/pm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.23.6\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extension-drag-handle\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003eDragHandle\u003c/strong\u003e: Added \u003ccode\u003edragImageProperties\u003c/code\u003e option to limit which CSS properties are cloned for the drag image. By default all ~300+ computed styles are copied; setting this to a subset (e.g. \u003ccode\u003e['color', 'background-color', 'font-size']\u003c/code\u003e) reduces the cost when dragging selections with complex nodes.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-collaboration\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-node-range\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: Fix deleteSelection to properly handle inline nodes with \u003ccode\u003etext*\u003c/code\u003e content. The selection is now expanded to include the entire inline node boundaries when deleting, preventing incorrect collapse of inline text nodes.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extensions\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003ePlaceholder\u003c/strong\u003e: Replaced full-document \u003ccode\u003edoc.descendants()\u003c/code\u003e traversal with a cursor-resolved fast path for the default config and viewport-limited scanning for the non-default config, significantly reducing decoration overhead on large documents.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.23.5\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/markdown\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix extra mark tokens after inline atom nodes during Markdown serialization\u003c/li\u003e\n\u003cli\u003e7bf0e73: Fix adjacent marks of the same type with different attributes being merged during Markdown serialization\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix $pos() returning correct node for non-text atom nodes instead of doc node\u003c/li\u003e\n\u003cli\u003e7bf0e73: fix(nodeview): eliminate unnecessary re-renders, add opt-in position tracking\nNodeViews no longer re-render when decorations or position change without\ncontent changes. Added \u003ccode\u003etrackNodeViewPosition\u003c/code\u003e option — when enabled, the\ncomponent re-renders on every position shift so calls to \u003ccode\u003egetPos()\u003c/code\u003e stay\ncurrent in render output. Removed the internal \u003ccode\u003enodeViewPositionRegistry\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/blob/main/packages/pm/CHANGELOG.md\"\u003e@​tiptap/pm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.23.6\u003c/h2\u003e\n\u003ch2\u003e3.23.5\u003c/h2\u003e\n\u003ch2\u003e3.23.4\u003c/h2\u003e\n\u003ch2\u003e3.23.3\u003c/h2\u003e\n\u003ch2\u003e3.23.2\u003c/h2\u003e\n\u003ch2\u003e3.23.1\u003c/h2\u003e\n\u003ch2\u003e3.23.0\u003c/h2\u003e\n\u003ch2\u003e3.22.5\u003c/h2\u003e\n\u003ch2\u003e3.22.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e27ea931: Fix dependencies installation after packages updates producing peer dependency resolution conflicts\u003c/li\u003e\n\u003cli\u003e032f8f1: Remove unused ProseMirror packages from \u003ccode\u003e@​tiptap/pm\u003c/code\u003e to reduce bundle size\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.22.3\u003c/h2\u003e\n\u003ch2\u003e3.22.2\u003c/h2\u003e\n\u003ch2\u003e3.22.1\u003c/h2\u003e\n\u003ch2\u003e3.22.0\u003c/h2\u003e\n\u003ch2\u003e3.21.0\u003c/h2\u003e\n\u003ch2\u003e3.20.6\u003c/h2\u003e\n\u003ch2\u003e3.20.5\u003c/h2\u003e\n\u003ch2\u003e3.20.4\u003c/h2\u003e\n\u003ch2\u003e3.20.3\u003c/h2\u003e\n\u003ch2\u003e3.20.2\u003c/h2\u003e\n\u003ch2\u003e3.20.1\u003c/h2\u003e\n\u003ch2\u003e3.20.0\u003c/h2\u003e\n\u003ch2\u003e3.19.0\u003c/h2\u003e\n\u003ch2\u003e3.18.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/195b13f719efc1bd3d95a79ffeb2105ee3118295\"\u003e\u003ccode\u003e195b13f\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7854\"\u003e#7854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/d9daae031a4f72ae81af039a721df66f5c0c2696\"\u003e\u003ccode\u003ed9daae0\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7835\"\u003e#7835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/9d9cc06a33e70c0af7576e6d1250a1c4c596ba43\"\u003e\u003ccode\u003e9d9cc06\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7822\"\u003e#7822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0f05ae73b4d242583f5ed4dedf16dd163756f23f\"\u003e\u003ccode\u003e0f05ae7\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7821\"\u003e#7821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/817c490e7970e75aa3951d9f96e8b52ec2fe2714\"\u003e\u003ccode\u003e817c490\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/a48290e543a4ff60c434b511419640b536acdcfe\"\u003e\u003ccode\u003ea48290e\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7808\"\u003e#7808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0520d9d62ead17da6ec444d045a44c744b22db95\"\u003e\u003ccode\u003e0520d9d\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7784\"\u003e#7784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/898a8ed9b21ffbe9ade9a53be9b213acf511ffd3\"\u003e\u003ccode\u003e898a8ed\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7756\"\u003e#7756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/dec97359f25684d53e577abd72c503253713fedf\"\u003e\u003ccode\u003edec9735\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7727\"\u003e#7727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/032f8f1f87bde93d2fd8225e2d963d4f8be9f588\"\u003e\u003ccode\u003e032f8f1\u003c/code\u003e\u003c/a\u003e chore(pm): remove unused ProseMirror packages from \u003ccode\u003e@​tiptap/pm\u003c/code\u003e (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm/issues/7749\"\u003e#7749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ueberdosis/tiptap/commits/v3.23.6/packages/pm\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tiptap/react` from 2.27.2 to 3.23.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/releases\"\u003e@​tiptap/react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.23.6\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extension-drag-handle\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003eDragHandle\u003c/strong\u003e: Added \u003ccode\u003edragImageProperties\u003c/code\u003e option to limit which CSS properties are cloned for the drag image. By default all ~300+ computed styles are copied; setting this to a subset (e.g. \u003ccode\u003e['color', 'background-color', 'font-size']\u003c/code\u003e) reduces the cost when dragging selections with complex nodes.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-collaboration\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-node-range\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: Fix deleteSelection to properly handle inline nodes with \u003ccode\u003etext*\u003c/code\u003e content. The selection is now expanded to include the entire inline node boundaries when deleting, preventing incorrect collapse of inline text nodes.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extensions\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003ePlaceholder\u003c/strong\u003e: Replaced full-document \u003ccode\u003edoc.descendants()\u003c/code\u003e traversal with a cursor-resolved fast path for the default config and viewport-limited scanning for the non-default config, significantly reducing decoration overhead on large documents.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.23.5\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/markdown\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix extra mark tokens after inline atom nodes during Markdown serialization\u003c/li\u003e\n\u003cli\u003e7bf0e73: Fix adjacent marks of the same type with different attributes being merged during Markdown serialization\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix $pos() returning correct node for non-text atom nodes instead of doc node\u003c/li\u003e\n\u003cli\u003e7bf0e73: fix(nodeview): eliminate unnecessary re-renders, add opt-in position tracking\nNodeViews no longer re-render when decorations or position change without\ncontent changes. Added \u003ccode\u003etrackNodeViewPosition\u003c/code\u003e option — when enabled, the\ncomponent re-renders on every position shift so calls to \u003ccode\u003egetPos()\u003c/code\u003e stay\ncurrent in render output. Removed the internal \u003ccode\u003enodeViewPositionRegistry\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/blob/main/packages/react/CHANGELOG.md\"\u003e@​tiptap/react's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.23.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [d168376]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.23.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eb5f34fc: Respect explicit \u003ccode\u003eimmediatelyRender: true\u003c/code\u003e in client-side Next.js. Previously, when running under Next.js (\u003ccode\u003ewindow.next\u003c/code\u003e present), the \u003ccode\u003eimmediatelyRender\u003c/code\u003e option was forced to \u003ccode\u003efalse\u003c/code\u003e even when the user explicitly passed \u003ccode\u003etrue\u003c/code\u003e, breaking client-only Next.js apps that rely on the editor existing on the first render. The hook now only forces \u003ccode\u003efalse\u003c/code\u003e when actual SSR is detected (\u003ccode\u003etypeof window === 'undefined'\u003c/code\u003e), or when running under Next.js with no explicit value.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e95e138c: fix(nodeview): eliminate unnecessary re-renders, add opt-in position tracking\u003c/p\u003e\n\u003cp\u003eNodeViews no longer re-render when decorations or position change without\ncontent changes. Added \u003ccode\u003etrackNodeViewPosition\u003c/code\u003e option — when enabled, the\ncomponent re-renders on every position shift so calls to \u003ccode\u003egetPos()\u003c/code\u003e stay\ncurrent in render output. Removed the internal \u003ccode\u003enodeViewPositionRegistry\u003c/code\u003e.\nAdded shallow prop comparison in \u003ccode\u003eReactRenderer.updateProps()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [835caf5]\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [95e138c]\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.23.4\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.4\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.4\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.23.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.3\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.3\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.23.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e30e0b58: Default \u003ccode\u003eimmediatelyRender\u003c/code\u003e to \u003ccode\u003efalse\u003c/code\u003e in SSR environments instead of throwing an error\u003c/p\u003e\n\u003cp\u003ePreviously, omitting \u003ccode\u003eimmediatelyRender\u003c/code\u003e in an SSR environment (e.g. Next.js) would throw an error in development and silently return \u003ccode\u003enull\u003c/code\u003e in production. This was a common source of crashes, especially when AI-generated code set up the editor without explicitly passing \u003ccode\u003eimmediatelyRender: false\u003c/code\u003e. The hook now defaults \u003ccode\u003eimmediatelyRender\u003c/code\u003e to \u003ccode\u003etrue\u003c/code\u003e, but automatically sets it to \u003ccode\u003efalse\u003c/code\u003e when SSR is detected, logging a warning in development instead of throwing.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated dependencies [f98eaaf]\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.2\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/ueberdosis/tiptap/commit/195b13f719efc1bd3d95a79ffeb2105ee3118295\"\u003e\u003ccode\u003e195b13f\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7854\"\u003e#7854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/d9daae031a4f72ae81af039a721df66f5c0c2696\"\u003e\u003ccode\u003ed9daae0\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7835\"\u003e#7835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/95e138c18807f2d31c7ef83b3762ae654c8c8243\"\u003e\u003ccode\u003e95e138c\u003c/code\u003e\u003c/a\u003e fix(nodeview): eliminate unnecessary re-renders, add opt-in position tracking...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/b5f34fcbdaf6ddcb1fccdecee04ca1db89858227\"\u003e\u003ccode\u003eb5f34fc\u003c/code\u003e\u003c/a\u003e fix(react): respect explicit immediatelyRender on client-side Next.js\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/9d9cc06a33e70c0af7576e6d1250a1c4c596ba43\"\u003e\u003ccode\u003e9d9cc06\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7822\"\u003e#7822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0f05ae73b4d242583f5ed4dedf16dd163756f23f\"\u003e\u003ccode\u003e0f05ae7\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7821\"\u003e#7821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/817c490e7970e75aa3951d9f96e8b52ec2fe2714\"\u003e\u003ccode\u003e817c490\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/30e0b58311fd7cf7e29dece5e700cbed999c692c\"\u003e\u003ccode\u003e30e0b58\u003c/code\u003e\u003c/a\u003e fix(react): default immediatelyRender to false in SSR environments (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7761\"\u003e#7761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/a48290e543a4ff60c434b511419640b536acdcfe\"\u003e\u003ccode\u003ea48290e\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7808\"\u003e#7808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0520d9d62ead17da6ec444d045a44c744b22db95\"\u003e\u003ccode\u003e0520d9d\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/react/issues/7784\"\u003e#7784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ueberdosis/tiptap/commits/v3.23.6/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tiptap/starter-kit` from 2.27.2 to 3.23.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/releases\"\u003e@​tiptap/starter-kit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.23.6\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extension-drag-handle\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003eDragHandle\u003c/strong\u003e: Added \u003ccode\u003edragImageProperties\u003c/code\u003e option to limit which CSS properties are cloned for the drag image. By default all ~300+ computed styles are copied; setting this to a subset (e.g. \u003ccode\u003e['color', 'background-color', 'font-size']\u003c/code\u003e) reduces the cost when dragging selections with complex nodes.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-collaboration\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-node-range\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: Fix deleteSelection to properly handle inline nodes with \u003ccode\u003etext*\u003c/code\u003e content. The selection is now expanded to include the entire inline node boundaries when deleting, preventing incorrect collapse of inline text nodes.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/extensions\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e937ff2e: \u003cstrong\u003ePlaceholder\u003c/strong\u003e: Replaced full-document \u003ccode\u003edoc.descendants()\u003c/code\u003e traversal with a cursor-resolved fast path for the default config and viewport-limited scanning for the non-default config, significantly reducing decoration overhead on large documents.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.23.5\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/markdown\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix extra mark tokens after inline atom nodes during Markdown serialization\u003c/li\u003e\n\u003cli\u003e7bf0e73: Fix adjacent marks of the same type with different attributes being merged during Markdown serialization\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [7bf0e73]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003c/h3\u003e\n\u003ch4\u003ePatch Changes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e7bf0e73: Fix $pos() returning correct node for non-text atom nodes instead of doc node\u003c/li\u003e\n\u003cli\u003e7bf0e73: fix(nodeview): eliminate unnecessary re-renders, add opt-in position tracking\nNodeViews no longer re-render when decorations or position change without\ncontent changes. Added \u003ccode\u003etrackNodeViewPosition\u003c/code\u003e option — when enabled, the\ncomponent re-renders on every position shift so calls to \u003ccode\u003egetPos()\u003c/code\u003e stay\ncurrent in render output. Removed the internal \u003ccode\u003enodeViewPositionRegistry\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ueberdosis/tiptap/blob/main/packages/starter-kit/CHANGELOG.md\"\u003e@​tiptap/starter-kit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.23.6\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [d168376]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [937ff2e]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extensions\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-blockquote\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-bold\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-code\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-code-block\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-document\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-hard-break\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-heading\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-horizontal-rule\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-italic\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-link\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-list\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-paragraph\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-strike\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-text\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-underline\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-dropcursor\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-gapcursor\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-list-item\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-list-keymap\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-bullet-list\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-ordered-list\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/pm\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.6\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.23.5\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [835caf5]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [95e138c]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/core\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-blockquote\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-bold\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-code\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-code-block\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-document\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-hard-break\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-heading\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-horizontal-rule\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-italic\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-link\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-list\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​tiptap/extension-paragraph\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.23.5\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/ueberdosis/tiptap/commit/195b13f719efc1bd3d95a79ffeb2105ee3118295\"\u003e\u003ccode\u003e195b13f\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7854\"\u003e#7854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/d9daae031a4f72ae81af039a721df66f5c0c2696\"\u003e\u003ccode\u003ed9daae0\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7835\"\u003e#7835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/9d9cc06a33e70c0af7576e6d1250a1c4c596ba43\"\u003e\u003ccode\u003e9d9cc06\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7822\"\u003e#7822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0f05ae73b4d242583f5ed4dedf16dd163756f23f\"\u003e\u003ccode\u003e0f05ae7\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7821\"\u003e#7821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/817c490e7970e75aa3951d9f96e8b52ec2fe2714\"\u003e\u003ccode\u003e817c490\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/a48290e543a4ff60c434b511419640b536acdcfe\"\u003e\u003ccode\u003ea48290e\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7808\"\u003e#7808\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/0520d9d62ead17da6ec444d045a44c744b22db95\"\u003e\u003ccode\u003e0520d9d\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7784\"\u003e#7784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/898a8ed9b21ffbe9ade9a53be9b213acf511ffd3\"\u003e\u003ccode\u003e898a8ed\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7756\"\u003e#7756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/dec97359f25684d53e577abd72c503253713fedf\"\u003e\u003ccode\u003edec9735\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7727\"\u003e#7727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ueberdosis/tiptap/commit/626b052fa2098c8d5b20abb2e60fa6d7711d46af\"\u003e\u003ccode\u003e626b052\u003c/code\u003e\u003c/a\u003e chore(release): publish a new stable version (\u003ca href=\"https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit/issues/7714\"\u003e#7714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ueberdosis/tiptap/commits/v3.23.6/packages/starter-kit\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lucide-react` from 0.562.0 to 1.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lucide-icons/lucide/releases\"\u003elucide-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.16.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003eblender\u003c/code\u003e icon by \u003ca href=\"https://github.com/rrod497\"\u003e\u003ccode\u003e@​rrod497\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3884\"\u003elucide-icons/lucide#3884\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.15.0...1.16.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.15.0...1.16.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.15.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: remove 'less' from brand stopwords by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4331\"\u003elucide-icons/lucide#4331\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(\u003ccode\u003e@​lucide/vue\u003c/code\u003e): Clone slots before passing to icon by \u003ca href=\"https://github.com/axtho\"\u003e\u003ccode\u003e@​axtho\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4339\"\u003elucide-icons/lucide#4339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003etext-cursor\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4340\"\u003elucide-icons/lucide#4340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003elandmark\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4334\"\u003elucide-icons/lucide#4334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump nitropack from 2.13.1 to 2.13.4 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4352\"\u003elucide-icons/lucide#4352\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump simple-git from 3.33.0 to 3.36.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/lucide-icons/lucide/pull/4349\"\u003elucide-icons/lucide#4349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003ecandy-cane\u003c/code\u003e icon by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4148\"\u003elucide-icons/lucide#4148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003evolleyball\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4338\"\u003elucide-icons/lucide#4338\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): changed \u003ccode\u003echart-no-axes-combined\u003c/code\u003e icon by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3567\"\u003elucide-icons/lucide#3567\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icon): added broccoli icon by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4263\"\u003elucide-icons/lucide#4263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(site): Updates to site and updated carbon ads by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4359\"\u003elucide-icons/lucide#4359\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added sticky note variants by \u003ca href=\"https://github.com/Barakudum\"\u003e\u003ccode\u003e@​Barakudum\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4348\"\u003elucide-icons/lucide#4348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump astro from 6.1.6 to 6.1.10 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4361\"\u003elucide-icons/lucide#4361\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/axtho\"\u003e\u003ccode\u003e@​axtho\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4339\"\u003elucide-icons/lucide#4339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Barakudum\"\u003e\u003ccode\u003e@​Barakudum\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4348\"\u003elucide-icons/lucide#4348\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.14.0...1.15.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.14.0...1.15.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.14.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003erepeat-off\u003c/code\u003e icon by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3102\"\u003elucide-icons/lucide#3102\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.13.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(docs): sync URL params with UI state on categories page by \u003ca href=\"https://github.com/taimar\"\u003e\u003ccode\u003e@​taimar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4111\"\u003elucide-icons/lucide#4111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): add \u003ccode\u003ewaves-vertical\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3867\"\u003elucide-icons/lucide#3867\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.12.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icon): add folder-bookmark icon by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4262\"\u003elucide-icons/lucide#4262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(readme): Update readme files by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4320\"\u003elucide-icons/lucide#4320\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003eastroid\u003c/code\u003e icon by \u003ca href=\"https://github.com/whoisBugsbunny\"\u003e\u003ccode\u003e@​whoisBugsbunny\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4217\"\u003elucide-icons/lucide#4217\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/lucide-icons/lucide/commit/07c885e6c1f9952965ba388b7fd2bb7c4d416a67\"\u003e\u003ccode\u003e07c885e\u003c/code\u003e\u003c/a\u003e fix(docs): fix zephyr-cloud URL in readmes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/50d8af5a1012e188f3d71ac8f1fc0fba1aab5357\"\u003e\u003ccode\u003e50d8af5\u003c/code\u003e\u003c/a\u003e docs(readme): Update readme files (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4320\"\u003e#4320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/653e44b83293567ff24dcb90ca1094a9cf0a042a\"\u003e\u003ccode\u003e653e44b\u003c/code\u003e\u003c/a\u003e feat(packages): use .mjs for ESM bundles (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4285\"\u003e#4285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/7623e23f787fe78e5075a613fd22da2cecbb9b1b\"\u003e\u003ccode\u003e7623e23\u003c/code\u003e\u003c/a\u003e feat(docs): add Zephyr Cloud to Hero Backers tier \u0026amp; rework updateSponsors scr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/dada0a82970d3733d1d716e2089591c538272a39\"\u003e\u003ccode\u003edada0a8\u003c/code\u003e\u003c/a\u003e fix(lucide-react): Fix dynamic imports (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4210\"\u003e#4210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/a6e648a66ff470c2255d3666765fd73cfcc185ff\"\u003e\u003ccode\u003ea6e648a\u003c/code\u003e\u003c/a\u003e fix(lucide-react): correct client directives in RSC files (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4189\"\u003e#4189\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/1f010a357a21c7a8c5e1f92dd90f09d76a04e2dd\"\u003e\u003ccode\u003e1f010a3\u003c/code\u003e\u003c/a\u003e fix(lucide-react): Fixes provider export and RSC render issues (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4175\"\u003e#4175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/484f2c9cd377dbeb536f63d4b183ecfd26947014\"\u003e\u003ccode\u003e484f2c9\u003c/code\u003e\u003c/a\u003e docs(version-1): Version 1 website (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4142\"\u003e#4142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/a0e202d759da95c243b541f8d3c1c26eada32b2e\"\u003e\u003ccode\u003ea0e202d\u003c/code\u003e\u003c/a\u003e feat(packages/angular): add new \u003ccode\u003e@​lucide/angular\u003c/code\u003e package (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/3897\"\u003e#3897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/c5b155ec37f0217bfd85e309873029379df473ac\"\u003e\u003ccode\u003ec5b155e\u003c/code\u003e\u003c/a\u003e Merge branch 'main' of \u003ca href=\"https://github.com/lucide-icons/lucide\"\u003ehttps://github.com/lucide-icons/lucide\u003c/a\u003e into next\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lucide-icons/lucide/commits/1.16.0/packages/lucide-react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/js` from 9.39.4 to 10.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003e@​eslint/js's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.0.1\u003c/h2\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c87d5bded54c5cf491eb04c24c9d09bbbd42c23e\"\u003e\u003ccode\u003ec87d5bd\u003c/code\u003e\u003c/a\u003e fix: update eslint (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20531\"\u003e#20531\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84100115c14691691058f00779c94e74fca946a\"\u003e\u003ccode\u003ed841001\u003c/code\u003e\u003c/a\u003e fix: update \u003ccode\u003eminimatch\u003c/code\u003e to \u003ccode\u003e10.2.1\u003c/code\u003e to address security vulnerabilities (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20519\"\u003e#20519\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/04c21475b3004904948f02049f2888b401d82c78\"\u003e\u003ccode\u003e04c2147\u003c/code\u003e\u003c/a\u003e fix: update error message for unused suppressions (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20496\"\u003e#20496\u003c/a\u003e) (fnx)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/38b089c1726feac0e31a31d47941bd99e29ce003\"\u003e\u003ccode\u003e38b089c\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-array\u003c/code\u003e to ^0.23.1 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20484\"\u003e#20484\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/5b3dbce50a1404a9f118afe810cefeee79388a2a\"\u003e\u003ccode\u003e5b3dbce\u003c/code\u003e\u003c/a\u003e docs: add AI acknowledgement section to templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20431\"\u003e#20431\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6f23076037d5879f20fb3be2ef094293b1e8d38c\"\u003e\u003ccode\u003e6f23076\u003c/code\u003e\u003c/a\u003e docs: toggle nav in no-JS mode (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20476\"\u003e#20476\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b69cfb32a16c5d5e9986390d484fae1d21e406f9\"\u003e\u003ccode\u003eb69cfb3\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e5c281ffd038a3a7a3e5364db0b9378e0ad83020\"\u003e\u003ccode\u003ee5c281f\u003c/code\u003e\u003c/a\u003e chore: updates for v9.39.3 release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8c3832adb77cd993b4a24891900d5eeaaf093cdc\"\u003e\u003ccode\u003e8c3832a\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e to ^8.56.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20514\"\u003e#20514\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/8330d238ae6adb68bb6a1c9381e38cfedd990d94\"\u003e\u003ccode\u003e8330d23\u003c/code\u003e\u003c/a\u003e test: add tests for config-api (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20493\"\u003e#20493\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/37d6e91e88fa6a2ca6d8726679096acff21ba6cc\"\u003e\u003ccode\u003e37d6e91\u003c/code\u003e\u003c/a\u003e chore: remove eslint v10 prereleases from eslint-config-eslint deps (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20494\"\u003e#20494\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/da7cd0e79197ad16e17052eef99df141de6dbfb1\"\u003e\u003ccode\u003eda7cd0e\u003c/code\u003e\u003c/a\u003e refactor: cleanup error message templates (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20479\"\u003e#20479\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release (Jenkins)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev10.0.0\u003c/h2\u003e\n\u003ch2\u003eBreaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f9e54f43a5e497cdfa179338b431093245cb787b\"\u003e\u003ccode\u003ef9e54f4\u003c/code\u003e\u003c/a\u003e feat!: estimate rule-tester failure location (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20420\"\u003e#20420\u003c/a\u003e) (ST-DDT)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a176319d8ade1a7d9b2d7fb8f038f55a2662325f\"\u003e\u003ccode\u003ea176319\u003c/code\u003e\u003c/a\u003e feat!: replace \u003ccode\u003echalk\u003c/code\u003e with \u003ccode\u003estyleText\u003c/code\u003e and add \u003ccode\u003ecolor\u003c/code\u003e to \u003ccode\u003eResultsMeta\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20227\"\u003e#20227\u003c/a\u003e) (루밀LuMir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c7046e6c1e03c4ca0eee4888a1f2eba4c6454f84\"\u003e\u003ccode\u003ec7046e6\u003c/code\u003e\u003c/a\u003e feat!: enable JSX reference tracking (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20152\"\u003e#20152\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3383e7ec9028166cafc8ea7986c2f7498d0049f0\"\u003e\u003ccode\u003e3383e7e\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eSourceCode\u003c/code\u003e methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20137\"\u003e#20137\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/501abd0e916a35554c58b7c0365537f1fa3880ce\"\u003e\u003ccode\u003e501abd0\u003c/code\u003e\u003c/a\u003e feat!: update dependency minimatch to v10 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20246\"\u003e#20246\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/ca4d3b40085de47561f89656a2207d09946ed45e\"\u003e\u003ccode\u003eca4d3b4\u003c/code\u003e\u003c/a\u003e fix!: stricter rule tester assertions for valid test cases (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20125\"\u003e#20125\u003c/a\u003e) (唯然)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/96512a66c86402fb0538cdcb6cd30b9073f6bf3b\"\u003e\u003ccode\u003e96512a6\u003c/code\u003e\u003c/a\u003e fix!: Remove deprecated rule context methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20086\"\u003e#20086\u003c/a\u003e) (Nicholas C. Zakas)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c69fdacdb2e886b9d965568a397aa8220db3fe90\"\u003e\u003ccode\u003ec69fdac\u003c/code\u003e\u003c/a\u003e feat!: remove eslintrc support (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20037\"\u003e#20037\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/208b5cc34a8374ff81412b5bec2e0800eebfbd04\"\u003e\u003ccode\u003e208b5cc\u003c/code\u003e\u003c/a\u003e feat!: Use \u003ccode\u003eScopeManager#addGlobals()\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20132\"\u003e#20132\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a2ee188ea7a38a0c6155f3d39e2b00e1d0f36e14\"\u003e\u003ccode\u003ea2ee188\u003c/code\u003e\u003c/a\u003e fix!: add \u003ccode\u003euniqueItems: true\u003c/code\u003e in \u003ccode\u003eno-invalid-regexp\u003c/code\u003e option (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20155\"\u003e#20155\u003c/a\u003e) (Tanuj Kanti)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/a89059dbf2832d417dd493ee81483227ec44e4ab\"\u003e\u003ccode\u003ea89059d\u003c/code\u003e\u003c/a\u003e feat!: Program range span entire source text (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20133\"\u003e#20133\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/39a6424373d915fa9de0d7b0caba9a4dc3da9b53\"\u003e\u003ccode\u003e39a6424\u003c/code\u003e\u003c/a\u003e fix!: assert 'text' is a string across all RuleFixer methods (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20082\"\u003e#20082\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f28fbf846244e043c92b355b224d121b06140b44\"\u003e\u003ccode\u003ef28fbf8\u003c/code\u003e\u003c/a\u003e fix!: Deprecate \u003ccode\u003e\u0026quot;always\u0026quot;\u003c/code\u003e and \u003ccode\u003e\u0026quot;as-needed\u0026quot;\u003c/code\u003e options of the \u003ccode\u003eradix\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20223\"\u003e#20223\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/aa3fb2b233e929b37220be940575f42c280e0b98\"\u003e\u003ccode\u003eaa3fb2b\u003c/code\u003e\u003c/a\u003e fix!: tighten \u003ccode\u003efunc-names\u003c/code\u003e schema (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20119\"\u003e#20119\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f6c0ed0311dcfee853367d5068c765d066e6b756\"\u003e\u003ccode\u003ef6c0ed0\u003c/code\u003e\u003c/a\u003e feat!: report \u003ccode\u003eeslint-env\u003c/code\u003e comments as errors (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20128\"\u003e#20128\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4bf739fb533e59f7f0a66b65f7bc80be0f37d8db\"\u003e\u003ccode\u003e4bf739f\u003c/code\u003e\u003c/a\u003e fix!: remove deprecated \u003ccode\u003eLintMessage#nodeType\u003c/code\u003e and \u003ccode\u003eTestCaseError#type\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20096\"\u003e#20096\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/523c076866400670fb2192a3f55dbf7ad3469247\"\u003e\u003ccode\u003e523c076\u003c/code\u003e\u003c/a\u003e feat!: drop support for jiti \u0026lt; 2.2.0 (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20016\"\u003e#20016\u003c/a\u003e) (michael faith)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/4f880ee02992e1bf0e96ebaba679985e2d1295f1\"\u003e\u003ccode\u003e4f880ee\u003c/code\u003e\u003c/a\u003e feat!: remove \u003ccode\u003ev10_*\u003c/code\u003e and inactive \u003ccode\u003eunstable_*\u003c/code\u003e flags (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20225\"\u003e#20225\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f18115c363a4ac7671a4c7f30ee13d57ebba330f\"\u003e\u003ccode\u003ef18115c\u003c/code\u003e\u003c/a\u003e feat!: \u003ccode\u003eno-shadow-restricted-names\u003c/code\u003e report \u003ccode\u003eglobalThis\u003c/code\u003e by default (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20027\"\u003e#20027\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/bff9091927811497dbf066b0e3b85ecb37d43822\"\u003e\u003ccode\u003ebff9091\u003c/code\u003e\u003c/a\u003e feat: handle \u003ccode\u003eArray.fromAsync\u003c/code\u003e in \u003ccode\u003earray-callback-return\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20457\"\u003e#20457\u003c/a\u003e) (Francesco Trotta)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/290c594bb50c439fb71bc75521ee5360daa8c222\"\u003e\u003ccode\u003e290c594\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eself\u003c/code\u003e to \u003ccode\u003eno-implied-eval\u003c/code\u003e rule (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20468\"\u003e#20468\u003c/a\u003e) (sethamus)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/43677de07ebd6e14bfac40a46ad749ba783c45f2\"\u003e\u003ccode\u003e43677de\u003c/code\u003e\u003c/a\u003e feat: fix handling of function and class expression names in \u003ccode\u003eno-shadow\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20432\"\u003e#20432\u003c/a\u003e) (Milos Djermanovic)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/84fb885d49ac810e79a9491276b4828b53d913e5\"\u003e\u003ccode\u003e84fb885\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1f667344b57c4c09b548d94bcfac1f91b6e5c63d\"\u003e\u003ccode\u003e1f66734\u003c/code\u003e\u003c/a\u003e chore: add \u003ccode\u003eeslint\u003c/code\u003e to \u003ccode\u003epeerDependencies\u003c/code\u003e of \u003ccode\u003e@eslint/js\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20467\"\u003e#20467\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f3fbc2f60cbe2c718364feb8c3fc0452c0df3c56\"\u003e\u003ccode\u003ef3fbc2f\u003c/code\u003e\u003c/a\u003e chore: set \u003ccode\u003e@eslint/js\u003c/code\u003e version to 10.0.0 to skip releasing it (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20466\"\u003e#20466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/b4b3127f8542c599ce2dea804b6582ebc40c993d\"\u003e\u003ccode\u003eb4b3127\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/0b14059491d830a49b3577931f4f68fbcfce6be5\"\u003e\u003ccode\u003e0b14059\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/fa31a608901684fbcd9906d1907e66561d16e5aa\"\u003e\u003ccode\u003efa31a60\u003c/code\u003e\u003c/a\u003e feat!: add \u003ccode\u003ename\u003c/code\u003e to configs (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1e2cad5f6fa47ed6ed89d2a29798dda926d50990\"\u003e\u003ccode\u003e1e2cad5\u003c/code\u003e\u003c/a\u003e chore: package.json update for \u003ccode\u003e@​eslint/js\u003c/code\u003e release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/454a292c95f34dad232411ddac06408e6383bb64\"\u003e\u003ccode\u003e454a292\u003c/code\u003e\u003c/a\u003e feat!: update \u003ccode\u003eeslint:recommended\u003c/code\u003e configuration (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20210\"\u003e#20210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/c6358c31fbd3937b92d89be2618ffdf5a774604e\"\u003e\u003ccode\u003ec6358c3\u003c/code\u003e\u003c/a\u003e feat!: Require Node.js \u003ccode\u003e^20.19.0 || ^22.13.0 || \u0026gt;=24\u003c/code\u003e (\u003ca href=\"https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/20160\"\u003e#20160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/eslint/commits/v10.0.1/packages/js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@types/node` from 24.12.4 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 `eslint` from 9.39.4 to 10.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/eslint/releases\"\u003eeslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev10.4.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/1a45ec596af1dd5f880e6874cb8f24dafb6a7ecf\"\u003e\u003ccode\u003e1a45ec5\u003c/code\u003e\u003c/a\u003e feat: check sequence expressions in \u003ccode\u003efor-direction\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20701\"\u003e#20701\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/450040bd89b989b3531824c6be45feb5fe3d936b\"\u003e\u003ccode\u003e450040b\u003c/code\u003e\u003c/a\u003e feat: add \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to \u003ccode\u003eeslint/config\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20735\"\u003e#20735\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/544c0c3da589166ad8e5d634f35d3d06701c57be\"\u003e\u003ccode\u003e544c0c3\u003c/code\u003e\u003c/a\u003e fix: escape code path DOT labels in debug output (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20866\"\u003e#20866\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6799431203f2579632d0870f98ba132067f4040c\"\u003e\u003ccode\u003e6799431\u003c/code\u003e\u003c/a\u003e fix: update dependency \u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e to ^0.6.0 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20850\"\u003e#20850\u003c/a\u003e) (renovate[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/f078fef5005dceb14fc162aab7c7200e027688dd\"\u003e\u003ccode\u003ef078fef\u003c/code\u003e\u003c/a\u003e fix: handle non-array deprecated rule replacements (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20825\"\u003e#20825\u003c/a\u003e) (xbinaryx)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/7e52a7151fb92eec0e0f67fe4e5ddbd1ccce796f\"\u003e\u003ccode\u003e7e52a71\u003c/code\u003e\u003c/a\u003e docs: add mention of \u003ccode\u003e@eslint-react/eslint-plugin\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20869\"\u003e#20869\u003c/a\u003e) (Pavel)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/db3468ba746407d7f286f18f7ea9db6df0e3bc08\"\u003e\u003ccode\u003edb3468b\u003c/code\u003e\u003c/a\u003e docs: tweak wording around ambiguous CJS-vs-ESM config (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20865\"\u003e#20865\u003c/a\u003e) (Kirk Waiblinger)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/90846643ec6e97d447ae0d831fabe6d17b0a998a\"\u003e\u003ccode\u003e9084664\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/9cc73875046e3c4b8313644cbb1e99e26b36bd3f\"\u003e\u003ccode\u003e9cc7387\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/3d7b5484407403817aa9071a394d336d8ea96eb5\"\u003e\u003ccode\u003e3d7b548\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/191ec3c0a3f94ce0f110df761f0b2b8949011ccb\"\u003e\u003ccode\u003e191ec3c\u003c/code\u003e\u003c/a\u003e docs: Update README (GitHub Actions Bot)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eChores\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/6616856f28fa514a30f87b5539fc100d739a94bf\"\u003e\u003ccode\u003e6616856\u003c/code\u003e\u003c/a\u003e chore: upgrade knip to v6 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20875\"\u003e#20875\u003c/a\u003e) (Pixel998)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d13b084a3ad02f926e9addaa35fc383759ea5554\"\u003e\u003ccode\u003ed13b084\u003c/code\u003e\u003c/a\u003e ci: ensure auto-created PRs run CI (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20860\"\u003e#20860\u003c/a\u003e) (lumir)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/e71c7af86dce9acc1d18cb12d2184309f6841594\"\u003e\u003ccode\u003ee71c7af\u003c/code\u003e\u003c/a\u003e ci: bump pnpm/action-setup from 6.0.5 to 6.0.7 (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20862\"\u003e#20862\u003c/a\u003e) (dependabot[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/d84393dea170f54191fd20c8268b52c81c0ccd99\"\u003e\u003ccode\u003ed84393d\u003c/code\u003e\u003c/a\u003e test: add unit tests for SuppressionsService.applySuppressions() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20863\"\u003e#20863\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/24db8cb8e6f07fba667121777a15b1785486be94\"\u003e\u003ccode\u003e24db8cb\u003c/code\u003e\u003c/a\u003e test: add tests for SuppressionsService.save() (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20802\"\u003e#20802\u003c/a\u003e) (kuldeep kumar)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/eslint/commit/2ef0549cac4a9537e4c3a26b9f3edd4c99476bf6\"\u003e\u003ccode\u003e2ef0549\u003c/code\u003e\u003c/a\u003e chore: update ecosystem plugins (\u003ca href=\"https://redirect.github.com/eslint/eslint/issues/20857\"\u003e#20857\u003c/a\u003e) (github-actions[bot])\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/es...\n\n_Description has been truncated_","html_url":"https://github.com/pamu512/tarka/pull/198","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/pamu512%2Ftarka/issues/198","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/198/packages"}},{"old_version":"4.1.18","new_version":"4.2.1","update_type":"minor","path":null,"pr_created_at":"2026-05-21T19:51:02.000Z","version_change":"4.1.18 → 4.2.1","issue":{"uuid":"4497477865","node_id":"PR_kwDORkwgk87eFW69","number":348,"state":"closed","title":"chore(deps): bump @tailwindcss/oxide-linux-x64-gnu from 4.1.18 to 4.2.1","user":"dependabot[bot]","labels":["dependencies","javascript","bot","size/XS","cla: needed"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":"2026-05-28T23:49:24.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-21T19:51:02.000Z","updated_at":"2026-05-28T23:49:33.000Z","time_to_close":619102,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.1.18","new_version":"4.2.1","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) from 4.1.18 to 4.2.1.\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/oxide-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow trailing dash in functional utility names for backwards compatibility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19696\"\u003e#19696\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eProperly detect classes containing \u003ccode\u003e.\u003c/code\u003e characters within curly braces in MDX files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19711\"\u003e#19711\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd mauve, olive, mist, and taupe color palettes to the default theme (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19627\"\u003e#19627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e package to run Tailwind CSS as a webpack plugin (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19610\"\u003e#19610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epbs-*\u003c/code\u003e and \u003ccode\u003epbe-*\u003c/code\u003e utilities for \u003ccode\u003epadding-block-start\u003c/code\u003e and \u003ccode\u003epadding-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003embs-*\u003c/code\u003e and \u003ccode\u003embe-*\u003c/code\u003e utilities for \u003ccode\u003emargin-block-start\u003c/code\u003e and \u003ccode\u003emargin-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escroll-pbs-*\u003c/code\u003e and \u003ccode\u003escroll-pbe-*\u003c/code\u003e utilities for \u003ccode\u003escroll-padding-block-start\u003c/code\u003e and \u003ccode\u003escroll-padding-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escroll-mbs-*\u003c/code\u003e and \u003ccode\u003escroll-mbe-*\u003c/code\u003e utilities for \u003ccode\u003escroll-margin-block-start\u003c/code\u003e and \u003ccode\u003escroll-margin-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eborder-bs-*\u003c/code\u003e and \u003ccode\u003eborder-be-*\u003c/code\u003e utilities for \u003ccode\u003eborder-block-start\u003c/code\u003e and \u003ccode\u003eborder-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003einline-*\u003c/code\u003e, \u003ccode\u003emin-inline-*\u003c/code\u003e, \u003ccode\u003emax-inline-*\u003c/code\u003e utilities for \u003ccode\u003einline-size\u003c/code\u003e, \u003ccode\u003emin-inline-size\u003c/code\u003e, and \u003ccode\u003emax-inline-size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19612\"\u003e#19612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eblock-*\u003c/code\u003e, \u003ccode\u003emin-block-*\u003c/code\u003e, \u003ccode\u003emax-block-*\u003c/code\u003e utilities for \u003ccode\u003eblock-size\u003c/code\u003e, \u003ccode\u003emin-block-size\u003c/code\u003e, and \u003ccode\u003emax-block-size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19612\"\u003e#19612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003einset-s-*\u003c/code\u003e, \u003ccode\u003einset-e-*\u003c/code\u003e, \u003ccode\u003einset-bs-*\u003c/code\u003e, \u003ccode\u003einset-be-*\u003c/code\u003e utilities for \u003ccode\u003einset-inline-start\u003c/code\u003e, \u003ccode\u003einset-inline-end\u003c/code\u003e, \u003ccode\u003einset-block-start\u003c/code\u003e, and \u003ccode\u003einset-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19613\"\u003e#19613\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003efont-features-*\u003c/code\u003e utility for \u003ccode\u003efont-feature-settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19623\"\u003e#19623\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent double \u003ccode\u003e@supports\u003c/code\u003e wrapper for \u003ccode\u003ecolor-mix\u003c/code\u003e values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19450\"\u003e#19450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow whitespace around \u003ccode\u003e@source inline()\u003c/code\u003e argument (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19461\"\u003e#19461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmit comment when source maps are saved to files when using \u003ccode\u003e@tailwindcss/cli\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19447\"\u003e#19447\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDetect utilities containing capital letters followed by numbers (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19465\"\u003e#19465\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix class extraction for Rails' strict locals (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19525\"\u003e#19525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlign \u003ccode\u003e@utility\u003c/code\u003e name validation with Oxide scanner rules (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19524\"\u003e#19524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix infinite loop when using \u003ccode\u003e@variant\u003c/code\u003e inside \u003ccode\u003e@custom-variant\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19633\"\u003e#19633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiples of \u003ccode\u003e.25\u003c/code\u003e in \u003ccode\u003easpect-*\u003c/code\u003e fractions (e.g. \u003ccode\u003easpect-8.5/11\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19688\"\u003e#19688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure changes to external files listed via \u003ccode\u003e@source\u003c/code\u003e trigger a full page reload when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19670\"\u003e#19670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance of Oxide scanner in bigger projects by reducing file system walks (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19632\"\u003e#19632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure import aliases in Astro v5 work without crashing when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/issues/19677\"\u003e#19677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow escape characters in \u003ccode\u003e@utility\u003c/code\u003e names to improve support with formatters such as Biome (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19626\"\u003e#19626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect canonicalization results when canonicalizing multiple times (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19675\"\u003e#19675\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.jj\u003c/code\u003e to default ignored content directories (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19687\"\u003e#19687\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003estart-*\u003c/code\u003e and \u003ccode\u003eend-*\u003c/code\u003e utilities in favor of \u003ccode\u003einset-s-*\u003c/code\u003e and \u003ccode\u003einset-e-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19613\"\u003e#19613\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[4.2.1] - 2026-02-23\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow trailing dash in functional utility names for backwards compatibility (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19696\"\u003e#19696\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eProperly detect classes containing \u003ccode\u003e.\u003c/code\u003e characters within curly braces in MDX files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19711\"\u003e#19711\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.0] - 2026-02-18\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd mauve, olive, mist, and taupe color palettes to the default theme (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19627\"\u003e#19627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e@tailwindcss/webpack\u003c/code\u003e package to run Tailwind CSS as a webpack plugin (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19610\"\u003e#19610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003epbs-*\u003c/code\u003e and \u003ccode\u003epbe-*\u003c/code\u003e utilities for \u003ccode\u003epadding-block-start\u003c/code\u003e and \u003ccode\u003epadding-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003embs-*\u003c/code\u003e and \u003ccode\u003embe-*\u003c/code\u003e utilities for \u003ccode\u003emargin-block-start\u003c/code\u003e and \u003ccode\u003emargin-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escroll-pbs-*\u003c/code\u003e and \u003ccode\u003escroll-pbe-*\u003c/code\u003e utilities for \u003ccode\u003escroll-padding-block-start\u003c/code\u003e and \u003ccode\u003escroll-padding-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003escroll-mbs-*\u003c/code\u003e and \u003ccode\u003escroll-mbe-*\u003c/code\u003e utilities for \u003ccode\u003escroll-margin-block-start\u003c/code\u003e and \u003ccode\u003escroll-margin-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eborder-bs-*\u003c/code\u003e and \u003ccode\u003eborder-be-*\u003c/code\u003e utilities for \u003ccode\u003eborder-block-start\u003c/code\u003e and \u003ccode\u003eborder-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19601\"\u003e#19601\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003einline-*\u003c/code\u003e, \u003ccode\u003emin-inline-*\u003c/code\u003e, \u003ccode\u003emax-inline-*\u003c/code\u003e utilities for \u003ccode\u003einline-size\u003c/code\u003e, \u003ccode\u003emin-inline-size\u003c/code\u003e, and \u003ccode\u003emax-inline-size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19612\"\u003e#19612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eblock-*\u003c/code\u003e, \u003ccode\u003emin-block-*\u003c/code\u003e, \u003ccode\u003emax-block-*\u003c/code\u003e utilities for \u003ccode\u003eblock-size\u003c/code\u003e, \u003ccode\u003emin-block-size\u003c/code\u003e, and \u003ccode\u003emax-block-size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19612\"\u003e#19612\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003einset-s-*\u003c/code\u003e, \u003ccode\u003einset-e-*\u003c/code\u003e, \u003ccode\u003einset-bs-*\u003c/code\u003e, \u003ccode\u003einset-be-*\u003c/code\u003e utilities for \u003ccode\u003einset-inline-start\u003c/code\u003e, \u003ccode\u003einset-inline-end\u003c/code\u003e, \u003ccode\u003einset-block-start\u003c/code\u003e, and \u003ccode\u003einset-block-end\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19613\"\u003e#19613\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003efont-features-*\u003c/code\u003e utility for \u003ccode\u003efont-feature-settings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19623\"\u003e#19623\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePrevent double \u003ccode\u003e@supports\u003c/code\u003e wrapper for \u003ccode\u003ecolor-mix\u003c/code\u003e values (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19450\"\u003e#19450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow whitespace around \u003ccode\u003e@source inline()\u003c/code\u003e argument (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19461\"\u003e#19461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEmit comment when source maps are saved to files when using \u003ccode\u003e@tailwindcss/cli\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19447\"\u003e#19447\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDetect utilities containing capital letters followed by numbers (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19465\"\u003e#19465\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix class extraction for Rails' strict locals (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19525\"\u003e#19525\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAlign \u003ccode\u003e@utility\u003c/code\u003e name validation with Oxide scanner rules (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19524\"\u003e#19524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix infinite loop when using \u003ccode\u003e@variant\u003c/code\u003e inside \u003ccode\u003e@custom-variant\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19633\"\u003e#19633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow multiples of \u003ccode\u003e.25\u003c/code\u003e in \u003ccode\u003easpect-*\u003c/code\u003e fractions (e.g. \u003ccode\u003easpect-8.5/11\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19688\"\u003e#19688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure changes to external files listed via \u003ccode\u003e@source\u003c/code\u003e trigger a full page reload when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19670\"\u003e#19670\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance of Oxide scanner in bigger projects by reducing file system walks (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19632\"\u003e#19632\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure import aliases in Astro v5 work without crashing when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/issues/19677\"\u003e#19677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow escape characters in \u003ccode\u003e@utility\u003c/code\u003e names to improve support with formatters such as Biome (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19626\"\u003e#19626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect canonicalization results when canonicalizing multiple times (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19675\"\u003e#19675\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.jj\u003c/code\u003e to default ignored content directories (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19687\"\u003e#19687\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecated\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate \u003ccode\u003estart-*\u003c/code\u003e and \u003ccode\u003eend-*\u003c/code\u003e utilities in favor of \u003ccode\u003einset-s-*\u003c/code\u003e and \u003ccode\u003einset-e-*\u003c/code\u003e utilities (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19613\"\u003e#19613\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/tailwindlabs/tailwindcss/commit/1dce64ee7ec2e414c845b4e268ac3b9b89aaf0c8\"\u003e\u003ccode\u003e1dce64e\u003c/code\u003e\u003c/a\u003e 4.2.1 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu/issues/19714\"\u003e#19714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/1b16411919457ee47d38910fd07e134e9765eb4c\"\u003e\u003ccode\u003e1b16411\u003c/code\u003e\u003c/a\u003e 4.2.0 (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu/issues/19695\"\u003e#19695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/c6f0c6b31845ed743030fc53a13b4ddc5657a468\"\u003e\u003ccode\u003ec6f0c6b\u003c/code\u003e\u003c/a\u003e bump required engine to Node 20\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.1/crates/node/npm/linux-x64-gnu\"\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.1.18\u0026new-version=4.2.1)](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/ahliweb/sikesra/pull/348","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahliweb%2Fsikesra/issues/348","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/348/packages"}},{"old_version":"4.2.4","new_version":"4.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-19T23:35:40.000Z","version_change":"4.2.4 → 4.3.0","issue":{"uuid":"4481867856","node_id":"PR_kwDOQ8rQV87dS4_z","number":59,"state":"open","title":"chore(deps): bump @tailwindcss/oxide-linux-x64-gnu from 4.2.4 to 4.3.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-19T23:35:40.000Z","updated_at":"2026-05-19T23:35:40.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) from 4.2.4 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/oxide-linux-x64-gnu'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu'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\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/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/crates/node/npm/linux-x64-gnu/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/crates/node/npm/linux-x64-gnu\"\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.2.4\u0026new-version=4.3.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/doloop-bit/simkopkbm/pull/59","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/doloop-bit%2Fsimkopkbm/issues/59","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/59/packages"}},{"old_version":"4.2.4","new_version":"4.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-19T04:20:26.000Z","version_change":"4.2.4 → 4.3.0","issue":{"uuid":"4474356366","node_id":"PR_kwDOScqyrs7c6eXv","number":12,"state":"closed","title":"build(deps): bump the minor-and-patch group with 14 updates","user":"dependabot[bot]","labels":["web","sdk","dependencies"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2026-05-26T00:44:03.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-19T04:20:26.000Z","updated_at":"2026-05-26T00:44:05.000Z","time_to_close":591817,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"minor-and-patch","update_count":14,"packages":[{"name":"@typescript-eslint/eslint-plugin","old_version":"8.59.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.59.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-eslint","old_version":"8.59.1","new_version":"8.59.4","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"next","old_version":"16.2.4","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"react","old_version":"19.2.5","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-dom","old_version":"19.2.5","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tailwindcss/postcss","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@vitest/ui","old_version":"4.1.5","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"eslint-config-next","old_version":"16.2.4","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"tailwindcss","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"vitest","old_version":"4.1.5","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@vitest/coverage-v8","old_version":"4.1.5","new_version":"4.1.6","repository_url":"https://github.com/vitest-dev/vitest"}],"path":null,"ecosystem":"npm"},"body":"Bumps the minor-and-patch group with 14 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.59.4` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.59.1` | `8.59.4` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.59.1` | `8.59.4` |\n| [next](https://github.com/vercel/next.js) | `16.2.4` | `16.2.6` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.5` | `19.2.6` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.5` | `19.2.6` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.4` | `4.3.0` |\n| [@vitest/ui](https://github.com/vitest-dev/vitest/tree/HEAD/packages/ui) | `4.1.5` | `4.1.6` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.2.4` | `16.2.6` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.4` | `4.3.0` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.5` | `4.1.6` |\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| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.1.5` | `4.1.6` |\n\nUpdates `@typescript-eslint/eslint-plugin` from 8.59.1 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/eslint-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e@​typescript-eslint/eslint-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for eslint-plugin to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\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/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4302433ae6bf93d4ddc35264ad1b951254758566\"\u003e\u003ccode\u003e4302433\u003c/code\u003e\u003c/a\u003e fix(eslint-plugin): [no-floating-promises] stack overflow when using recursiv...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/10b79f1ba8e98610a3af85152a1b3b406f91e633\"\u003e\u003ccode\u003e10b79f1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency eslint to v10.4.0 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12339\"\u003e#12339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2a6765d9628dc776f8127c96f088bb807c0bcab2\"\u003e\u003ccode\u003e2a6765d\u003c/code\u003e\u003c/a\u003e chore: clenaup \u003ccode\u003egetAwaitedType\u003c/code\u003e from \u003ccode\u003etypescript.d.ts\u003c/code\u003e (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12302\"\u003e#12302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/48e13c0261e3cb1bf4f4dfaa462cdb3a56ef7383\"\u003e\u003ccode\u003e48e13c0\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/e26dc8003ababf078aad4df17765ee4cea30644c\"\u003e\u003ccode\u003ee26dc80\u003c/code\u003e\u003c/a\u003e docs: update stale links to latest (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12313\"\u003e#12313\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/44f9625336841a8ee3eb01a9e02e49b1d7b12648\"\u003e\u003ccode\u003e44f9625\u003c/code\u003e\u003c/a\u003e chore(deps): update vitest monorepo to v4.1.5 (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12307\"\u003e#12307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/2ec35f1760aade4df4c631d76d78c7ed5e136333\"\u003e\u003ccode\u003e2ec35f1\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/ec3ef25390f7daf5a9ff33a60282bdbbb49ab0f3\"\u003e\u003ccode\u003eec3ef25\u003c/code\u003e\u003c/a\u003e test: make no-useless-empty-export tests fully static (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12260\"\u003e#12260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/60d0a513870d833617374ff8ea256d86ca3cbbbb\"\u003e\u003ccode\u003e60d0a51\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in no-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.4/packages/eslint-plugin\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@typescript-eslint/parser` from 8.59.1 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003e@​typescript-eslint/parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e@​typescript-eslint/parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\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/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.59.4/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript-eslint` from 8.59.1 to 8.59.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003etypescript-eslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.4\u003c/h2\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-floating-promises] stack overflow when using recursive types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12294\"\u003e#12294\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eproject-service:\u003c/strong\u003e throw error cause in \u003ccode\u003egetParsedConfigFileFromTSServer\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12321\"\u003e#12321\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEvyatar Daud \u003ca href=\"https://github.com/StyleShit\"\u003e\u003ccode\u003e@​StyleShit\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003elumir\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.3\u003c/h2\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.3\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003ev8.59.2\u003c/h2\u003e\n\u003ch2\u003e8.59.2 (2026-05-04)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unsafe-type-assertion] handle crash on recursive template literal types (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12150\"\u003e#12150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-deprecated] object destructuring values should be treated as declarations (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12292\"\u003e#12292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erule-tester:\u003c/strong\u003e add TypeScript as a peer dependency (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12288\"\u003e#12288\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDariusz Czajkowski\u003c/li\u003e\n\u003cli\u003eDima Barabash\u003c/li\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md\"\u003etypescript-eslint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.4 (2026-05-18)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003etypescript-eslint:\u003c/strong\u003e export Compatible* types from typescript-eslint to resolve pnpm TS error (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/12340\"\u003e#12340\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKirk Waiblinger \u003ca href=\"https://github.com/kirkwaiblinger\"\u003e\u003ccode\u003e@​kirkwaiblinger\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003ch2\u003e8.59.3 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.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 typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.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/ca6ca1431b6d18235297a7e29feb5d98f012dff2\"\u003e\u003ccode\u003eca6ca14\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/4b927c607755b2648d5854b9e928c1dbb2b8e088\"\u003e\u003ccode\u003e4b927c6\u003c/code\u003e\u003c/a\u003e fix(typescript-eslint): export Compatible* types from typescript-eslint to re...\u003c/li\u003e\n\u003cli\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/typescript-eslint/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.59.4/packages/typescript-eslint\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `next` from 16.2.4 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\"\u003enext'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://redirect.github.com/vercel/next.js/issues/92231\"\u003e#92231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix fallback route params case in app-page handler (\u003ca href=\"https://redirect.github.com/vercel/next.js/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://redirect.github.com/vercel/next.js/issues/91541\"\u003e#91541\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePatch setHeader for direct route handlers (\u003ca href=\"https://redirect.github.com/vercel/next.js/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://redirect.github.com/vercel/next.js/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://redirect.github.com/vercel/next.js/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/afa053d9eb9c2a68c7eba43e84fe6bed8babcd45\"\u003e\u003ccode\u003eafa053d\u003c/code\u003e\u003c/a\u003e Turbopack: Match proxy matchers with webpack implementation (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/93594\"\u003e#93594\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/97a154e5bbee0cb1ac3fb8aa4db66ac36e796e3d\"\u003e\u003ccode\u003e97a154e\u003c/code\u003e\u003c/a\u003e Turbopack: Fix middleware matcher suffix (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/93590\"\u003e#93590\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/83899bc89103d4df1479e065c7c1e09d4698a7b6\"\u003e\u003ccode\u003e83899bc\u003c/code\u003e\u003c/a\u003e [backport] Disable build caches for production/staging/force-preview deploys ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/7b222b90954d607fc28a34e9b360a9b1636bc206\"\u003e\u003ccode\u003e7b222b9\u003c/code\u003e\u003c/a\u003e [backport][test] Pin package manager to patch versions (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/93595\"\u003e#93595\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/a8dc24f1fe23d4a22d24fac734837f7c824138f7\"\u003e\u003ccode\u003ea8dc24f\u003c/code\u003e\u003c/a\u003e [backport] Turbopack: more strict vergen setup (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/93587\"\u003e#93587\u003c/a\u003e)\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/0dd94836a8b43209fcfefa448c141683c22c1a27\"\u003e\u003ccode\u003e0dd9483\u003c/code\u003e\u003c/a\u003e fix: add explicit checks for RSC header (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/83\"\u003e#83\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/d166096c399c4fc4e09cd2d1bf26dca6579a855d\"\u003e\u003ccode\u003ed166096\u003c/code\u003e\u003c/a\u003e fix proxy matching for segment prefetch URLs (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/89\"\u003e#89\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/next.js/commit/9d50c0b7190f59c470308578e12882788819f14c\"\u003e\u003ccode\u003e9d50c0b\u003c/code\u003e\u003c/a\u003e Strip next-resume header from incoming requests (\u003ca href=\"https://redirect.github.com/vercel/next.js/issues/92\"\u003e#92\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/next.js/compare/v16.2.4...v16.2.6\"\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 next since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `react` from 19.2.5 to 19.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003ereact's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.2.6 (May 6th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eType hardening and performance improvements\n(\u003ca href=\"https://redirect.github.com/facebook/react/pull/36425\"\u003e#36425\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\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/facebook/react/commit/eaf3e95ca92be7a23d3c9cc8ffd6f199a40be401\"\u003e\u003ccode\u003eeaf3e95\u003c/code\u003e\u003c/a\u003e Version 19.2.6\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/facebook/react/commits/v19.2.6/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `react-dom` from 19.2.5 to 19.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003ereact-dom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.2.6 (May 6th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eType hardening and performance improvements\n(\u003ca href=\"https://redirect.github.com/facebook/react/pull/36425\"\u003e#36425\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\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/facebook/react/commit/eaf3e95ca92be7a23d3c9cc8ffd6f199a40be401\"\u003e\u003ccode\u003eeaf3e95\u003c/code\u003e\u003c/a\u003e Version 19.2.6\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/facebook/react/commits/v19.2.6/packages/react-dom\"\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 `@tailwindcss/postcss` from 4.2.4 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\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/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\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/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\u003eSee full diff 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\u003cbr /\u003e\n\nUpdates `@vitest/ui` from 4.1.5 to 4.1.6\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/ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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/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.6/packages/ui\"\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.2.4 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\u003eSee full diff 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 `tailwindcss` from 4.2.4 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\"\u003etailwindcss'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss'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\u003escrollba...\n\n_Description has been truncated_","html_url":"https://github.com/Elite-tch/AgentCard/pull/12","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Elite-tch%2FAgentCard/issues/12","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12/packages"}},{"old_version":"4.2.1","new_version":"4.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-18T01:46:31.000Z","version_change":"4.2.1 → 4.3.0","issue":{"uuid":"4465701960","node_id":"PR_kwDORxNE987celhU","number":7,"state":"open","title":"chore(deps): bump the production-dependencies group across 1 directory with 20 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-18T01:46:31.000Z","updated_at":"2026-05-24T02:17:20.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":20,"packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-musl","old_version":"4.2.1","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"nanoid","old_version":"5.1.7","new_version":"5.1.11","repository_url":"https://github.com/ai/nanoid"},{"name":"jose","old_version":"6.2.1","new_version":"6.2.3","repository_url":"https://github.com/panva/jose"},{"name":"better-auth","old_version":"1.6.0","new_version":"1.6.11","repository_url":"https://github.com/better-auth/better-auth"},{"name":"drizzle-orm","old_version":"0.39.3","new_version":"0.45.2","repository_url":"https://github.com/drizzle-team/drizzle-orm"},{"name":"@hono/node-server","old_version":"1.19.11","new_version":"2.0.3","repository_url":"https://github.com/honojs/node-server"},{"name":"zod","old_version":"3.25.76","new_version":"4.4.3","repository_url":"https://github.com/colinhacks/zod"},{"name":"@neondatabase/serverless","old_version":"0.10.4","new_version":"1.1.0","repository_url":"https://github.com/neondatabase/serverless"},{"name":"postgres","old_version":"3.4.8","new_version":"3.4.9","repository_url":"https://github.com/porsager/postgres"},{"name":"ioredis","old_version":"5.10.0","new_version":"5.10.1","repository_url":"https://github.com/luin/ioredis"},{"name":"@modelcontextprotocol/sdk","old_version":"1.27.1","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"},{"name":"hono","old_version":"4.12.8","new_version":"4.12.22","repository_url":"https://github.com/honojs/hono"},{"name":"@base-ui/react","old_version":"1.3.0","new_version":"1.5.0","repository_url":"https://github.com/mui/base-ui"},{"name":"lucide-react","old_version":"0.577.0","new_version":"1.16.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"next","old_version":"16.1.7","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"react","old_version":"19.2.3","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-dom","old_version":"19.2.3","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"shadcn","old_version":"4.0.8","new_version":"4.8.0","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"}],"path":null,"ecosystem":"npm"},"body":"Bumps the production-dependencies group with 20 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.1` | `4.3.0` |\n| [@tailwindcss/oxide-linux-x64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-musl) | `4.2.1` | `4.3.0` |\n| [nanoid](https://github.com/ai/nanoid) | `5.1.7` | `5.1.11` |\n| [jose](https://github.com/panva/jose) | `6.2.1` | `6.2.3` |\n| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth) | `1.6.0` | `1.6.11` |\n| [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) | `0.39.3` | `0.45.2` |\n| [@hono/node-server](https://github.com/honojs/node-server) | `1.19.11` | `2.0.3` |\n| [zod](https://github.com/colinhacks/zod) | `3.25.76` | `4.4.3` |\n| [@neondatabase/serverless](https://github.com/neondatabase/serverless) | `0.10.4` | `1.1.0` |\n| [postgres](https://github.com/porsager/postgres) | `3.4.8` | `3.4.9` |\n| [ioredis](https://github.com/luin/ioredis) | `5.10.0` | `5.10.1` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.27.1` | `1.29.0` |\n| [hono](https://github.com/honojs/hono) | `4.12.8` | `4.12.22` |\n| [@base-ui/react](https://github.com/mui/base-ui/tree/HEAD/packages/react) | `1.3.0` | `1.5.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.577.0` | `1.16.0` |\n| [next](https://github.com/vercel/next.js) | `16.1.7` | `16.2.6` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.3` | `19.2.6` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.3` | `19.2.6` |\n| [shadcn](https://github.com/shadcn-ui/ui/tree/HEAD/packages/shadcn) | `4.0.8` | `4.8.0` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` 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/oxide-linux-x64-gnu'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/oxide-linux-x64-gnu'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/crates/node/npm/linux-x64-gnu/issues/20023\"\u003e#20023\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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\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/crates/node/npm/linux-x64-gnu/issues/19821\"\u003e#19821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-linux-x64-musl` 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/oxide-linux-x64-musl'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/oxide-linux-x64-musl'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/crates/node/npm/linux-x64-musl/issues/20023\"\u003e#20023\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/crates/node/npm/linux-x64-musl/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-musl/issues/19944\"\u003e#19944\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/crates/node/npm/linux-x64-musl/issues/19821\"\u003e#19821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/crates/node/npm/linux-x64-musl\"\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/oxide-linux-x64-musl\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `nanoid` from 5.1.7 to 5.1.11\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ai/nanoid/releases\"\u003enanoid's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.11\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breaking Nano ID by requesting big ID.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breaking nanoid by requesting big ID (by \u003ca href=\"https://github.com/alanzabihi\"\u003e\u003ccode\u003e@​alanzabihi\u003c/code\u003e\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed npm package size regression.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMade \u003ccode\u003ecusatomAlphabet\u003c/code\u003e 75% faster (by \u003ca href=\"https://github.com/saripovdenis\"\u003e\u003ccode\u003e@​saripovdenis\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/ai/nanoid/blob/main/CHANGELOG.md\"\u003enanoid's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.11\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breaking Nano ID by requesting big ID.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breaking Nano ID by requesting big ID (by \u003ca href=\"https://github.com/alanzabihi\"\u003e\u003ccode\u003e@​alanzabihi\u003c/code\u003e\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.9\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed npm package size regression.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e5.1.8\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMade \u003ccode\u003ecusatomAlphabet\u003c/code\u003e 75% faster (by \u003ca href=\"https://github.com/saripovdenis\"\u003e\u003ccode\u003e@​saripovdenis\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/ai/nanoid/commit/5423cf56499c1ea33ea4bd9fbaab1723083cb659\"\u003e\u003ccode\u003e5423cf5\u003c/code\u003e\u003c/a\u003e Release 5.1.11 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/21838943da8726c8ee3842c0dd2ed1c332c1b3b5\"\u003e\u003ccode\u003e2183894\u003c/code\u003e\u003c/a\u003e Backport 3.3.12 changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/7087969281cab8ba8ae3babf1894e819068b3bb4\"\u003e\u003ccode\u003e7087969\u003c/code\u003e\u003c/a\u003e Limit ID even more\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/013517bbe7daeffc3a0f6b288187984f64ac21b8\"\u003e\u003ccode\u003e013517b\u003c/code\u003e\u003c/a\u003e Temporary add pnpm-workspace.yaml to npm ignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/5db09ee173cb187e616337148da5bd892d396aa7\"\u003e\u003ccode\u003e5db09ee\u003c/code\u003e\u003c/a\u003e Release 5.1.10 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/be7901a66cc7f96af71b9854ba794207bb37f676\"\u003e\u003ccode\u003ebe7901a\u003c/code\u003e\u003c/a\u003e Fix random pool break\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/974f73b0647439f4484c00712fb5db44214aea45\"\u003e\u003ccode\u003e974f73b\u003c/code\u003e\u003c/a\u003e Structure tests with describe() instead of prefix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/fe3e7ec62b9d5b65b6d73fc5a3f3e3d8da5fa623\"\u003e\u003ccode\u003efe3e7ec\u003c/code\u003e\u003c/a\u003e Update dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/043a7c16dd815d5e1b4133b22d66cd742728b2cc\"\u003e\u003ccode\u003e043a7c1\u003c/code\u003e\u003c/a\u003e Move to pnpm 11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ai/nanoid/commit/e52d94613f0c5542c998a2f7d778295549432389\"\u003e\u003ccode\u003ee52d946\u003c/code\u003e\u003c/a\u003e Release 5.1.9 version\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ai/nanoid/compare/5.1.7...5.1.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jose` from 6.2.1 to 6.2.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/panva/jose/releases\"\u003ejose's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.3\u003c/h2\u003e\n\u003ch3\u003eRefactor\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecleanly reject invalid PBES2 p2c (\u003ca href=\"https://github.com/panva/jose/commit/0cdb851ca597635cac3da7a855342549fbe67a8d\"\u003e0cdb851\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.2.2\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ereject failed decompression with JWEInvalid error (\u003ca href=\"https://github.com/panva/jose/commit/043b181a96ee55d92b9ff1ee94e11be36e258ee4\"\u003e043b181\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/panva/jose/blob/main/CHANGELOG.md\"\u003ejose's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/panva/jose/compare/v6.2.2...v6.2.3\"\u003e6.2.3\u003c/a\u003e (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003eRefactor\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecleanly reject invalid PBES2 p2c (\u003ca href=\"https://github.com/panva/jose/commit/0cdb851ca597635cac3da7a855342549fbe67a8d\"\u003e0cdb851\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/panva/jose/compare/v6.2.1...v6.2.2\"\u003e6.2.2\u003c/a\u003e (2026-03-18)\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ereject failed decompression with JWEInvalid error (\u003ca href=\"https://github.com/panva/jose/commit/043b181a96ee55d92b9ff1ee94e11be36e258ee4\"\u003e043b181\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/panva/jose/commit/41ad7e9a76d270ca7e24b7421a88e507f756f2db\"\u003e\u003ccode\u003e41ad7e9\u003c/code\u003e\u003c/a\u003e chore(release): 6.2.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/988e90f6661eaa45418bc187cf890e156293f9c7\"\u003e\u003ccode\u003e988e90f\u003c/code\u003e\u003c/a\u003e chore: account for commit-and-tag-version instead of standard-version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/4b24656b617e5d8a54b6a50180b65c8b3eb7e4eb\"\u003e\u003ccode\u003e4b24656\u003c/code\u003e\u003c/a\u003e chore: update CHANGELOG.md header\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/0cdb851ca597635cac3da7a855342549fbe67a8d\"\u003e\u003ccode\u003e0cdb851\u003c/code\u003e\u003c/a\u003e refactor: cleanly reject invalid PBES2 p2c\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/a0b261eddf7e92a0b641eb2be988120101ed62ac\"\u003e\u003ccode\u003ea0b261e\u003c/code\u003e\u003c/a\u003e test: update Bun expectations\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/b39dc1af78e1559e6f5ca1be4d7423296e1bf8b6\"\u003e\u003ccode\u003eb39dc1a\u003c/code\u003e\u003c/a\u003e chore: use fs.globSync\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/0675be19a6d6f68cce6c10c76f635ead82e27a4c\"\u003e\u003ccode\u003e0675be1\u003c/code\u003e\u003c/a\u003e build: replace rollup umd build with a custom esbuild iife wrap\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/9b0332370a34600782e8d7106adb0a5506b72601\"\u003e\u003ccode\u003e9b03323\u003c/code\u003e\u003c/a\u003e chore: bump packages\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/914b73dad2360628845802e4818a52bd0fb72fbd\"\u003e\u003ccode\u003e914b73d\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump lodash\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/panva/jose/commit/9dce817d74963ee5ef00001810a0e36e4c396ffd\"\u003e\u003ccode\u003e9dce817\u003c/code\u003e\u003c/a\u003e chore: bump packages\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/panva/jose/compare/v6.2.1...v6.2.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `better-auth` from 1.6.0 to 1.6.11\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/better-auth/better-auth/releases\"\u003ebetter-auth's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.6.11\u003c/h2\u003e\n\u003ch2\u003e\u003ccode\u003ebetter-auth\u003c/code\u003e\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded an error code to the \u003ccode\u003echange-email-disabled\u003c/code\u003e response to help clients identify the rejection reason (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/8948\"\u003e#8948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed access-control role statement types so predefined organization roles expose only their configured permissions in TypeScript (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9507\"\u003e#9507\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed the anonymous plugin to correctly call \u003ccode\u003eonLinkAccount\u003c/code\u003e when email verification triggers auto sign-in (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9548\"\u003e#9548\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed device authorization to bind pending codes to the verifying session, preventing any authenticated user from approving or denying another user's device code (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9573\"\u003e#9573\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a race condition in the magic-link plugin that allowed concurrent requests to mint multiple sessions from the same single-use token (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9572\"\u003e#9572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed the \u003ccode\u003eoidc-provider\u003c/code\u003e and \u003ccode\u003emcp\u003c/code\u003e plugins to require \u003ccode\u003eclient_secret\u003c/code\u003e for confidential clients on refresh token grants and use constant-time secret comparison (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9576\"\u003e#9576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHardened \u003ccode\u003eoidc-provider\u003c/code\u003e and \u003ccode\u003emcp\u003c/code\u003e plugins to follow OAuth 2.1: removed \u003ccode\u003e\u0026quot;none\u0026quot;\u003c/code\u003e from advertised signing algorithms, defaulted plain PKCE off, and rejected incomplete PKCE parameters (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9575\"\u003e#9575\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed an invitation takeover vulnerability by enabling \u003ccode\u003erequireEmailVerificationOnInvitation\u003c/code\u003e by default and extending the verification gate to \u003ccode\u003egetInvitation\u003c/code\u003e and \u003ccode\u003elistUserInvitations\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9577\"\u003e#9577\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor detailed changes, see \u003ca href=\"https://github.com/better-auth/better-auth/blob/f41514ef07cfafc5dbf463bd1500aee6575d88a7/packages/better-auth/CHANGELOG.md\"\u003e\u003ccode\u003eCHANGELOG\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ccode\u003e@better-auth/oauth-provider\u003c/code\u003e\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a race condition in the OAuth authorization-code grant that allowed concurrent token-exchange requests to mint multiple token sets from the same authorization code\u003c/li\u003e\n\u003cli\u003eFixed a race condition in OAuth refresh-token rotation that allowed concurrent requests to fork refresh token families, and added a \u003ccode\u003eunique\u003c/code\u003e constraint on \u003ccode\u003eoauthRefreshToken.token\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed OAuth account linking to require a verified local email before linking an OAuth identity to a local account (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9578\"\u003e#9578\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor detailed changes, see \u003ca href=\"https://github.com/better-auth/better-auth/blob/f41514ef07cfafc5dbf463bd1500aee6575d88a7/packages/oauth-provider/CHANGELOG.md\"\u003e\u003ccode\u003eCHANGELOG\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ccode\u003e@better-auth/core\u003c/code\u003e\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed an invalid import list in the instrumentation module (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9582\"\u003e#9582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWidened \u003ccode\u003eadvanced.ipAddress.ipv6Subnet\u003c/code\u003e to accept any valid IPv6 prefix length (0-128) instead of a narrow set of values (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9545\"\u003e#9545\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor detailed changes, see \u003ca href=\"https://github.com/better-auth/better-auth/blob/f41514ef07cfafc5dbf463bd1500aee6575d88a7/packages/core/CHANGELOG.md\"\u003e\u003ccode\u003eCHANGELOG\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ccode\u003e@better-auth/scim\u003c/code\u003e\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed session cleanup to run when admin, anonymous, or SCIM operations delete a user (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9162\"\u003e#9162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003egenerateSCIMToken\u003c/code\u003e to reject \u003ccode\u003eproviderId\u003c/code\u003e values that collide with built-in account providers, preventing tokens from authenticating against unintended accounts (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9579\"\u003e#9579\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFor detailed changes, see \u003ca href=\"https://github.com/better-auth/better-auth/blob/f41514ef07cfafc5dbf463bd1500aee6575d88a7/packages/scim/CHANGELOG.md\"\u003e\u003ccode\u003eCHANGELOG\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ccode\u003e@better-auth/sso\u003c/code\u003e\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed SSO provider registration to require an org admin or owner role, preventing any organization member from registering providers (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9220\"\u003e#9220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed an SSRF vulnerability by validating user-supplied OIDC endpoint URLs against a public-routable host allowlist at provider registration and update (\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9574\"\u003e#9574\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/better-auth/better-auth/blob/main/packages/better-auth/CHANGELOG.md\"\u003ebetter-auth's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.6.11\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/better-auth/better-auth/pull/9568\"\u003e#9568\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/0cbddb8fa4eb19fbca75e9822134f89b3604286a\"\u003e\u003ccode\u003e0cbddb8\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - Add \u003ccode\u003einternalAdapter.consumeVerificationValue(identifier)\u003c/code\u003e: atomically consume a verification row keyed by identifier. The first concurrent caller receives the row; later racers receive \u003ccode\u003enull\u003c/code\u003e. Backed by a new \u003ccode\u003eDBAdapter.consumeOne\u003c/code\u003e primitive implemented natively per adapter (memory, mongo, drizzle, kysely, prisma), with a \u003ccode\u003etransaction(findMany + delete)\u003c/code\u003e factory fallback. \u003ccode\u003eSecondaryStorage.getAndDelete\u003c/code\u003e is added as an optional companion; Redis ships it via an atomic Lua get-and-delete operation for compatibility with Redis versions before 6.2.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9162\"\u003e#9162\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/a26333b5fb1a044e76c18385441d3ecc2240ab70\"\u003e\u003ccode\u003ea26333b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ping-maxwell\"\u003e\u003ccode\u003e@​ping-maxwell\u003c/code\u003e\u003c/a\u003e! - fix: cleanup sessions when admin, anonymous, or SCIM deletes a user\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9573\"\u003e#9573\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/99a254a79b59d5a3f5ca2123260118cddb5beed7\"\u003e\u003ccode\u003e99a254a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - fix(device-authorization): require verify-time ownership claim for approve/deny\u003c/p\u003e\n\u003cp\u003ePending device codes were not bound to the user who entered the code on the verification page until approval, leaving a window where any authenticated user could approve or deny another user's pending code by knowing the \u003ccode\u003euser_code\u003c/code\u003e. \u003ccode\u003eGET /device\u003c/code\u003e now claims the pending row for the calling session, and \u003ccode\u003ePOST /device/approve\u003c/code\u003e and \u003ccode\u003ePOST /device/deny\u003c/code\u003e require the calling session to match the claimed owner. Custom verification pages must be served to an authenticated session for the flow to succeed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/8948\"\u003e#8948\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/ee934854999390ee5ca73592fe205a470a810b83\"\u003e\u003ccode\u003eee93485\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/ping-maxwell\"\u003e\u003ccode\u003e@​ping-maxwell\u003c/code\u003e\u003c/a\u003e! - fix: add error code to change-email-disabled\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9572\"\u003e#9572\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/5f09d566a64ac9a0499d9664ce700edbf0630cea\"\u003e\u003ccode\u003e5f09d56\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - Fix race condition in the \u003ccode\u003emagic-link\u003c/code\u003e plugin's verify handler that allowed two concurrent requests to mint two sessions from the same single-use token. The handler now consumes the verification row atomically via \u003ccode\u003einternalAdapter.consumeVerificationValue\u003c/code\u003e, so a given magic link mints at most one session regardless of concurrency. The \u003ccode\u003eallowedAttempts\u003c/code\u003e option is retained for backward compatibility but no longer multiplies successful redemptions; tokens are single-use. The second-redeem error code changes from \u003ccode\u003eATTEMPTS_EXCEEDED\u003c/code\u003e to \u003ccode\u003eINVALID_TOKEN\u003c/code\u003e (the token no longer exists after consumption).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/b4bc65a007784b2eb0efb459e5fa6fd8055d3ec9\"\u003e\u003ccode\u003eb4bc65a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - Fix race condition in the OAuth authorization-code grant: two concurrent token-exchange requests sharing the same \u003ccode\u003ecode\u003c/code\u003e could both pass the find step before either delete completed and each mint an independent access/refresh/id token set. The \u003ccode\u003eauthorization_code\u003c/code\u003e handler in \u003ccode\u003e@better-auth/oauth-provider\u003c/code\u003e, plus the legacy \u003ccode\u003eoidc-provider\u003c/code\u003e and \u003ccode\u003emcp\u003c/code\u003e plugins in \u003ccode\u003ebetter-auth\u003c/code\u003e, now consume the verification row atomically via \u003ccode\u003einternalAdapter.consumeVerificationValue\u003c/code\u003e. The first caller mints tokens; concurrent racers receive \u003ccode\u003einvalid_grant\u003c/code\u003e (RFC 6749 §5.2). Malformed-verification-value branches in \u003ccode\u003e@better-auth/oauth-provider\u003c/code\u003e previously returned a project-specific \u003ccode\u003einvalid_verification\u003c/code\u003e code; those are now \u003ccode\u003einvalid_grant\u003c/code\u003e so spec-compliant clients can branch on the standard code.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9578\"\u003e#9578\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/da7e50beee849c59a2ed1ec6b3a38cc6ab9fb563\"\u003e\u003ccode\u003eda7e50b\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - \u003ccode\u003ehandleOAuthUserInfo\u003c/code\u003e (used by every social provider, generic-oauth, oauth-proxy, SSO OIDC and SAML, and idToken sign-in) implicitly linked a returning OAuth identity into a local user row whenever the IdP's \u003ccode\u003eemail_verified\u003c/code\u003e claim was true or the provider was trusted. The local row's own \u003ccode\u003eemailVerified\u003c/code\u003e flag was read only to flip it after linking, never as a precondition. \u003ccode\u003ePOST /sign-up/email\u003c/code\u003e creates rows with \u003ccode\u003eemailVerified: false\u003c/code\u003e for any caller, so an attacker who pre-registered a victim's email at the application could wait for the legitimate user's first OAuth sign-in: the IdP's verified claim was treated as ownership proof, and the victim's IdP identity was linked into the attacker-owned row.\u003c/p\u003e\n\u003cp\u003eThe implicit-link gate now requires \u003ccode\u003edbUser.user.emailVerified === true\u003c/code\u003e in addition to the provider trust check by default. A new \u003ccode\u003eaccount.accountLinking.requireLocalEmailVerified\u003c/code\u003e option (default \u003ccode\u003etrue\u003c/code\u003e) is the public surface for this gate. Apps whose users sign up via OAuth without verifying their email locally can opt back into the legacy behavior with \u003ccode\u003eaccount: { accountLinking: { requireLocalEmailVerified: false } }\u003c/code\u003e; understand the takeover risk before doing so. The option is \u003ccode\u003e@deprecated\u003c/code\u003e; a FIXME at each gate site points at the next-minor follow-up on \u003ccode\u003enext\u003c/code\u003e that drops the option and makes the gate unconditional.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eone-tap\u003c/code\u003e plugin honored its own copy of the gate and was updated identically: \u003ccode\u003erequireLocalEmailVerified\u003c/code\u003e and \u003ccode\u003eaccountLinking.disableImplicitLinking\u003c/code\u003e both apply on \u003ccode\u003e/one-tap/callback\u003c/code\u003e. The \u003ccode\u003eemail_verified\u003c/code\u003e claim from the Google ID token is now normalized via \u003ccode\u003etoBoolean\u003c/code\u003e so a string \u003ccode\u003e\u0026quot;false\u0026quot;\u003c/code\u003e is treated as falsy.\u003c/p\u003e\n\u003cp\u003eTest fixtures across \u003ccode\u003eadmin\u003c/code\u003e, \u003ccode\u003eoidc-provider\u003c/code\u003e, \u003ccode\u003emcp\u003c/code\u003e, \u003ccode\u003egeneric-oauth\u003c/code\u003e, \u003ccode\u003elast-login-method\u003c/code\u003e, and \u003ccode\u003eoauth-provider\u003c/code\u003e suites now mark users \u003ccode\u003eemailVerified: true\u003c/code\u003e via a \u003ccode\u003edatabaseHooks.user.create.before\u003c/code\u003e hook (or the \u003ccode\u003edisableTestUser\u003c/code\u003e opt-in on the oauth-provider RP) so the suites continue to exercise their role/flow logic rather than the new gate.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9507\"\u003e#9507\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/a1c9f3c08e7398e900e099839aa6dcc8d1d0b816\"\u003e\u003ccode\u003ea1c9f3c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/GautamBytes\"\u003e\u003ccode\u003e@​GautamBytes\u003c/code\u003e\u003c/a\u003e! - Preserve exact access-control role statement types so predefined organization roles expose only their configured permissions in TypeScript.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9577\"\u003e#9577\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/23094a628f007f801be6d26e5b15dc5fc6fc4eb8\"\u003e\u003ccode\u003e23094a6\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - The organization plugin's invitation recipient endpoints (\u003ccode\u003eacceptInvitation\u003c/code\u003e, \u003ccode\u003erejectInvitation\u003c/code\u003e, \u003ccode\u003egetInvitation\u003c/code\u003e, \u003ccode\u003elistUserInvitations\u003c/code\u003e) treated \u003ccode\u003einvitation.email.toLowerCase() === session.user.email.toLowerCase()\u003c/code\u003e as proof that the calling user owned the invited address. A session-authenticated user whose email matched but was never verified passed the gate, so anyone who could pre-register an unverified account at a victim's email could accept invitations addressed to that email. The \u003ccode\u003erequireEmailVerificationOnInvitation\u003c/code\u003e opt-in option closed the gap only when explicitly enabled and did not protect \u003ccode\u003egetInvitation\u003c/code\u003e or \u003ccode\u003elistUserInvitations\u003c/code\u003e at all.\u003c/p\u003e\n\u003cp\u003eThe gate is now applied on all four recipient endpoints and the \u003ccode\u003erequireEmailVerificationOnInvitation\u003c/code\u003e option default flips from \u003ccode\u003efalse\u003c/code\u003e to \u003ccode\u003etrue\u003c/code\u003e so existing apps are secure by default. Apps that intentionally accept invitations from unverified accounts can keep the legacy permissive behavior with \u003ccode\u003eorganization({ requireEmailVerificationOnInvitation: false })\u003c/code\u003e, but they should understand the takeover risk before doing so. Server-side calls to \u003ccode\u003elistUserInvitations\u003c/code\u003e with \u003ccode\u003ectx.query.email\u003c/code\u003e and no session continue to bypass the gate (the caller is trusted).\u003c/p\u003e\n\u003cp\u003eThe option is \u003ccode\u003e@deprecated\u003c/code\u003e. The next-minor release on \u003ccode\u003enext\u003c/code\u003e removes it entirely and makes the gate unconditional.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9548\"\u003e#9548\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/142b86c43d2e6b258236a298a31237e97f87d64d\"\u003e\u003ccode\u003e142b86c\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/dipan-ck\"\u003e\u003ccode\u003e@​dipan-ck\u003c/code\u003e\u003c/a\u003e! - anonymous plugin now correctly calls onLinkAccount when email verification triggers auto sign-in\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9576\"\u003e#9576\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/1f2ff4215c4affff0b140b0c0a712c0dde35659c\"\u003e\u003ccode\u003e1f2ff42\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - fix(oidc-provider, mcp): authenticate confidential clients on refresh_token grant and harden secret comparison\u003c/p\u003e\n\u003cp\u003eRefresh-token grants on the legacy \u003ccode\u003eoidc-provider\u003c/code\u003e and \u003ccode\u003emcp\u003c/code\u003e plugins now require the registered \u003ccode\u003eclient_secret\u003c/code\u003e from confidential clients, matching the \u003ccode\u003eauthorization_code\u003c/code\u003e path. Public clients (where \u003ccode\u003ecode_verifier\u003c/code\u003e substitutes for the secret on the auth-code grant) continue to skip secret validation. Secret comparisons across both plugins now use constant-time equality. The \u003ccode\u003e/mcp/token\u003c/code\u003e endpoint no longer emits a wildcard CORS \u003ccode\u003eAccess-Control-Allow-Origin: *\u003c/code\u003e header.\u003c/p\u003e\n\u003cp\u003eThese plugins are deprecated in favor of \u003ccode\u003e@better-auth/oauth-provider\u003c/code\u003e, which is unaffected. New deployments should adopt the replacement; this patch keeps existing deployments protected while migrating.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/better-auth/better-auth/pull/9575\"\u003e#9575\u003c/a\u003e \u003ca href=\"https://github.com/better-auth/better-auth/commit/699b09a2064dcb7d37046b5a90626c0b6f57af90\"\u003e\u003ccode\u003e699b09a\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/gustavovalverde\"\u003e\u003ccode\u003e@​gustavovalverde\u003c/code\u003e\u003c/a\u003e! - fix(oidc-provider, mcp): drop \u003ccode\u003e\u0026quot;none\u0026quot;\u003c/code\u003e from advertised signing algorithms, default \u003ccode\u003eallowPlainCodeChallengeMethod\u003c/code\u003e to \u003ccode\u003efalse\u003c/code\u003e, and reject missing PKCE method\u003c/p\u003e\n\u003cp\u003eThe legacy \u003ccode\u003eoidc-provider\u003c/code\u003e and \u003ccode\u003emcp\u003c/code\u003e plugins now follow OAuth 2.1 (RFC 9700) on three protocol gates:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eid_token_signing_alg_values_supported\u003c/code\u003e (oidc-provider, mcp) and \u003ccode\u003eresource_signing_alg_values_supported\u003c/code\u003e (mcp) no longer include \u003ccode\u003e\u0026quot;none\u0026quot;\u003c/code\u003e. Relying parties that negotiate from this list will no longer be steered toward unsigned tokens.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eallowPlainCodeChallengeMethod\u003c/code\u003e defaults to \u003ccode\u003efalse\u003c/code\u003e. Callers who need \u003ccode\u003eplain\u003c/code\u003e PKCE must opt in explicitly.\u003c/li\u003e\n\u003cli\u003eUnder the secure default the authorize endpoint no longer silently rewrites a missing \u003ccode\u003ecode_challenge_method\u003c/code\u003e to \u003ccode\u003e\u0026quot;plain\u0026quot;\u003c/code\u003e before the allowlist check. A request that provides \u003ccode\u003ecode_challenge\u003c/code\u003e without \u003ccode\u003ecode_challenge_method\u003c/code\u003e is now rejected with \u003ccode\u003einvalid_request\u003c/code\u003e; the inverse case (\u003ccode\u003ecode_challenge_method\u003c/code\u003e without \u003ccode\u003ecode_challenge\u003c/code\u003e) is also rejected so no inconsistent PKCE state is persisted on the authorization code record.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eNon-breaking for callers who never relied on \u003ccode\u003e\u0026quot;none\u0026quot;\u003c/code\u003e advertisement or the plain default. Callers who explicitly set \u003ccode\u003eallowPlainCodeChallengeMethod: true\u003c/code\u003e keep \u003ccode\u003eplain\u003c/code\u003e on the allowlist \u003cstrong\u003eand\u003c/strong\u003e retain the legacy \u0026quot;missing method defaults to plain\u0026quot; behavior for backward compatibility, so existing integrations that opted into plain PKCE continue to work. The next-minor on \u003ccode\u003enext\u003c/code\u003e will drop both the \u003ccode\u003eplain\u003c/code\u003e allowlist entry and this fallback; until then, the option is the single explicit knob for legacy behavior. Migrate to \u003ccode\u003e@better-auth/oauth-provider\u003c/code\u003e for the canonical, spec-aligned implementation.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/f41514ef07cfafc5dbf463bd1500aee6575d88a7\"\u003e\u003ccode\u003ef41514e\u003c/code\u003e\u003c/a\u003e chore: release v1.6.11 (\u003ca href=\"https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth/issues/9532\"\u003e#9532\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/699b09a2064dcb7d37046b5a90626c0b6f57af90\"\u003e\u003ccode\u003e699b09a\u003c/code\u003e\u003c/a\u003e fix(oidc-provider, mcp): drop \u0026quot;none\u0026quot; alg, default plain PKCE off, reject miss...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/b4bc65a007784b2eb0efb459e5fa6fd8055d3ec9\"\u003e\u003ccode\u003eb4bc65a\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/a1c9f3c08e7398e900e099839aa6dcc8d1d0b816\"\u003e\u003ccode\u003ea1c9f3c\u003c/code\u003e\u003c/a\u003e fix(access): preserve exact role statement types (\u003ca href=\"https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth/issues/9507\"\u003e#9507\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/da7e50beee849c59a2ed1ec6b3a38cc6ab9fb563\"\u003e\u003ccode\u003eda7e50b\u003c/code\u003e\u003c/a\u003e fix(oauth): block OAuth linking to unverified local accounts (\u003ca href=\"https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth/issues/9578\"\u003e#9578\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/23094a628f007f801be6d26e5b15dc5fc6fc4eb8\"\u003e\u003ccode\u003e23094a6\u003c/code\u003e\u003c/a\u003e fix(organization): default-on \u003ccode\u003erequireEmailVerificationOnInvitation\u003c/code\u003e \u0026amp; extend...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/1f2ff4215c4affff0b140b0c0a712c0dde35659c\"\u003e\u003ccode\u003e1f2ff42\u003c/code\u003e\u003c/a\u003e fix(oidc-provider, mcp): authenticate confidential clients on refresh_token g...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/5f09d566a64ac9a0499d9664ce700edbf0630cea\"\u003e\u003ccode\u003e5f09d56\u003c/code\u003e\u003c/a\u003e fix(magic-link): consume verification token atomically on verify (\u003ca href=\"https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth/issues/9572\"\u003e#9572\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/better-auth/better-auth/commit/99a254a79b59d5a3f5ca2123260118cddb5beed7\"\u003e\u003ccode\u003e99a254a\u003c/code\u003e\u003c/a\u003e fix(device-authorization): bind approval to verifier session (\u003ca href=\"https://github.com/better-auth/better-auth/tree/HEAD/packages/bett...\n\n_Description has been truncated_","html_url":"https://github.com/Cam-Smith-One/Headless_CRM/pull/7","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cam-Smith-One%2FHeadless_CRM/issues/7","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7/packages"}},{"old_version":"4.2.4","new_version":"4.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-12T00:49:03.000Z","version_change":"4.2.4 → 4.3.0","issue":{"uuid":"4425331932","node_id":"PR_kwDOE0E9D87aemEz","number":2402,"state":"open","title":"Bump @tailwindcss/oxide-linux-x64-gnu from 4.2.4 to 4.3.0","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":["lpeyr"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-12T00:49:03.000Z","updated_at":"2026-05-12T00:49:35.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) from 4.2.4 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/oxide-linux-x64-gnu'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu'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\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/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/crates/node/npm/linux-x64-gnu/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/crates/node/npm/linux-x64-gnu\"\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.2.4\u0026new-version=4.3.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/Leo-Corporation/Passliss/pull/2402","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Leo-Corporation%2FPassliss/issues/2402","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2402/packages"}},{"old_version":"4.2.2","new_version":"4.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-11T23:57:00.000Z","version_change":"4.2.2 → 4.3.0","issue":{"uuid":"4425141744","node_id":"PR_kwDORTNt3M7ad-9H","number":64,"state":"open","title":"chore(deps): bump the minor-and-patch group across 1 directory with 21 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-11T23:57:00.000Z","updated_at":"2026-05-11T23:59:22.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":21,"packages":[{"name":"@anthropic-ai/sdk","old_version":"0.82.0","new_version":"0.95.2","repository_url":"https://github.com/anthropics/anthropic-sdk-typescript"},{"name":"@aws-sdk/client-s3","old_version":"3.1023.0","new_version":"3.1045.0","repository_url":"https://github.com/aws/aws-sdk-js-v3"},{"name":"@upstash/redis","old_version":"1.37.0","new_version":"1.38.0","repository_url":"https://github.com/upstash/redis-js"},{"name":"lucide-react","old_version":"1.7.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"openai","old_version":"6.33.0","new_version":"6.37.0","repository_url":"https://github.com/openai/openai-node"},{"name":"react","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.6","repository_url":"https://github.com/facebook/react"},{"name":"tailwind-merge","old_version":"3.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":"@next/bundle-analyzer","old_version":"16.2.2","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"@playwright/test","old_version":"1.59.1","new_version":"1.60.0","repository_url":"https://github.com/microsoft/playwright"},{"name":"@tailwindcss/postcss","old_version":"4.2.2","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@types/node","old_version":"25.5.0","new_version":"25.7.0","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-config-next","old_version":"16.2.2","new_version":"16.2.6","repository_url":"https://github.com/vercel/next.js"},{"name":"swagger-ui-react","old_version":"5.32.1","new_version":"5.32.5","repository_url":"https://github.com/swagger-api/swagger-ui"},{"name":"@rollup/rollup-linux-x64-gnu","old_version":"4.60.1","new_version":"4.60.3","repository_url":"https://github.com/rollup/rollup"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the minor-and-patch group with 18 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@anthropic-ai/sdk](https://github.com/anthropics/anthropic-sdk-typescript) | `0.82.0` | `0.95.2` |\n| [@aws-sdk/client-s3](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-s3) | `3.1023.0` | `3.1045.0` |\n| [@upstash/redis](https://github.com/upstash/redis-js) | `1.37.0` | `1.38.0` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.7.0` | `1.14.0` |\n| [openai](https://github.com/openai/openai-node) | `6.33.0` | `6.37.0` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.6` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.6` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.3` |\n| [@next/bundle-analyzer](https://github.com/vercel/next.js/tree/HEAD/packages/next-bundle-analyzer) | `16.2.2` | `16.2.6` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.59.1` | `1.60.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.2` | `4.3.0` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.5.0` | `25.7.0` |\n| [autoprefixer](https://github.com/postcss/autoprefixer) | `10.4.27` | `10.5.0` |\n| [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) | `16.2.2` | `16.2.6` |\n| [swagger-ui-react](https://github.com/swagger-api/swagger-ui) | `5.32.1` | `5.32.5` |\n| [@rollup/rollup-linux-x64-gnu](https://github.com/rollup/rollup) | `4.60.1` | `4.60.3` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.2` | `4.3.0` |\n\n\nUpdates `@anthropic-ai/sdk` from 0.82.0 to 0.95.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/releases\"\u003e@​anthropic-ai/sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esdk: v0.95.2\u003c/h2\u003e\n\u003ch2\u003e0.95.2 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.95.1...sdk-v0.95.2\"\u003esdk-v0.95.1...sdk-v0.95.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003esdk: v0.95.1\u003c/h2\u003e\n\u003ch2\u003e0.95.1 (2026-05-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.95.0...sdk-v0.95.1\"\u003esdk-v0.95.0...sdk-v0.95.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eredact api-key headers in debug logs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/fad8feeb51d1b9bafaf85cf8345bb28627728e00\"\u003efad8fee\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esdk: v0.95.0\u003c/h2\u003e\n\u003ch2\u003e0.95.0 (2026-05-06)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.94.0...sdk-v0.95.0\"\u003esdk-v0.94.0...sdk-v0.95.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Managed Agents multiagents and outcomes, webhooks, vault validation (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/e0c0e9bef90b1919a5b806eb252e028981841e68\"\u003ee0c0e9b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Adjust webhook configuration (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/deed3f6290c0728dfc688e19117e1c01efb81a52\"\u003edeed3f6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esdk: v0.94.0\u003c/h2\u003e\n\u003ch2\u003e0.94.0 (2026-05-05)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.93.0...sdk-v0.94.0\"\u003esdk-v0.93.0...sdk-v0.94.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e allow targeting a workspace for OIDC federation token exchange (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/bde6620d68c2dd9e8e641b4cfed8847486ff046f\"\u003ebde6620\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esdk: v0.93.0\u003c/h2\u003e\n\u003ch2\u003e0.93.0 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.92.0...sdk-v0.93.0\"\u003esdk-v0.92.0...sdk-v0.93.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e add Workload Identity Federation, interactive OAuth, and auth profiles (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/d5d6abdb1976db389aca87553ffedab2414e0d77\"\u003ed5d6abd\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esdk: v0.92.0\u003c/h2\u003e\n\u003ch2\u003e0.92.0 (2026-04-30)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.91.1...sdk-v0.92.0\"\u003esdk-v0.91.1...sdk-v0.92.0\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/blob/main/CHANGELOG.md\"\u003e@​anthropic-ai/sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.95.2 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.95.1...sdk-v0.95.2\"\u003esdk-v0.95.1...sdk-v0.95.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.95.1 (2026-05-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.95.0...sdk-v0.95.1\"\u003esdk-v0.95.0...sdk-v0.95.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eredact api-key headers in debug logs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/fad8feeb51d1b9bafaf85cf8345bb28627728e00\"\u003efad8fee\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.95.0 (2026-05-06)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.94.0...sdk-v0.95.0\"\u003esdk-v0.94.0...sdk-v0.95.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Managed Agents multiagents and outcomes, webhooks, vault validation (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/e0c0e9bef90b1919a5b806eb252e028981841e68\"\u003ee0c0e9b\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Adjust webhook configuration (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/deed3f6290c0728dfc688e19117e1c01efb81a52\"\u003edeed3f6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.94.0 (2026-05-05)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.93.0...sdk-v0.94.0\"\u003esdk-v0.93.0...sdk-v0.94.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e allow targeting a workspace for OIDC federation token exchange (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/bde6620d68c2dd9e8e641b4cfed8847486ff046f\"\u003ebde6620\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.93.0 (2026-05-04)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.92.0...sdk-v0.93.0\"\u003esdk-v0.92.0...sdk-v0.93.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e add Workload Identity Federation, interactive OAuth, and auth profiles (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/d5d6abdb1976db389aca87553ffedab2414e0d77\"\u003ed5d6abd\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.92.0 (2026-04-30)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.91.1...sdk-v0.92.0\"\u003esdk-v0.91.1...sdk-v0.92.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e improve Managed Agents APIs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/ca1bf4a9b278fddc7f082b1c4f2b3a3e4e20298d\"\u003eca1bf4a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport setting headers via env (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/32f67d47952b12bb930c8bbfe87ab2ba2aee1882\"\u003e32f67d4\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/anthropics/anthropic-sdk-typescript/commit/e3bcdd4b5dbc73ff2093e4f91dd230fc6b3957ca\"\u003e\u003ccode\u003ee3bcdd4\u003c/code\u003e\u003c/a\u003e chore: release main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/08943f187d43aa2d28b0fb31ee9312f33447396d\"\u003e\u003ccode\u003e08943f1\u003c/code\u003e\u003c/a\u003e feat(aws): Add AWS client for Claude Platform on AWS\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/7834cebf3cebe6501896df21ebffcc93ffa0f901\"\u003e\u003ccode\u003e7834ceb\u003c/code\u003e\u003c/a\u003e ci(release-please): exclude subpackages from root changelog (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/991\"\u003e#991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/e6f4239f20544f26b1f8b5afa38f519512e30bfd\"\u003e\u003ccode\u003ee6f4239\u003c/code\u003e\u003c/a\u003e chore: release main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/6f0690508eb8be5af21601ff0b7c51fba1c803a2\"\u003e\u003ccode\u003e6f06905\u003c/code\u003e\u003c/a\u003e chore: redact api-key headers in debug logs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/7693ec96ce0d9c59171ad05bd1b917f45da45f75\"\u003e\u003ccode\u003e7693ec9\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1030\"\u003e#1030\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/9ddb1adbea8f748394dd4b8dd0c7e9a38d5cff9b\"\u003e\u003ccode\u003e9ddb1ad\u003c/code\u003e\u003c/a\u003e chore: release main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/6d738201c6c599279e757f0a5da05e1f4ee7133d\"\u003e\u003ccode\u003e6d73820\u003c/code\u003e\u003c/a\u003e feat(client): allow targeting a workspace for OIDC federation token exchange\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/d6f562c45a7fb4946ce7d75bd042d00ba57ede9f\"\u003e\u003ccode\u003ed6f562c\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1025\"\u003e#1025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/commit/d3aff2821ae2e261f67a10779c8a47c3ce24f0e8\"\u003e\u003ccode\u003ed3aff28\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-typescript/issues/1017\"\u003e#1017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/anthropic-sdk-typescript/compare/sdk-v0.82.0...sdk-v0.95.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@aws-sdk/client-s3` from 3.1023.0 to 3.1045.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-s3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1045.0\u003c/h2\u003e\n\u003ch4\u003e3.1045.0(2026-05-07)\u003c/h4\u003e\n\u003ch5\u003eDocumentation Changes\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient-guardduty:\u003c/strong\u003e  This is a documentation update (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/1484574cd28136e104e4364499a02f0435d274af\"\u003e1484574c\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-07 (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/81310767bd884df988d524faf7d1f131f15c6197\"\u003e81310767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-bcm-data-exports:\u003c/strong\u003e  With this release, customers can configure their data exports to generate additional integration artifacts for Athena and Redshift. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/238da2c16c5885ef9051c2798c0bec4a5c10fa9f\"\u003e238da2c1\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-invoicing:\u003c/strong\u003e  Updated ListInvoiceSummaries API to add new ReceiverRole filter in Request and Response (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/60a448cbfb17643b0b93c0bf72848b404dc31a83\"\u003e60a448cb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-bedrock-agentcore:\u003c/strong\u003e  Launching AgentCore payments - a capability that provides secure, instant microtransaction payments for AI agents to access paid APIs, MCP servers, and content. It handles payment processing for x402 protocol, payment limits, and 3P wallet integrations with Coinbase CDP and Stripe (Privy). (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/1e1031a7c070e56c2c781df05af75baf543e65ca\"\u003e1e1031a7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-ec2:\u003c/strong\u003e  DescribeInstanceTypes now accepts an IncludeUnsupportedInRegion parameter. When set, the response also lists instance types that are not available in the current Region. Each instance type includes a SupportedInRegion field indicating its regional availability. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/7026243303994e24be2996bf169b6acd50d5b081\"\u003e70262433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-bedrock-agentcore-control:\u003c/strong\u003e  Launching AgentCore payments - a capability that provides secure, instant microtransaction payments for AI agents to access paid APIs, MCP servers, and content. It handles payment processing for x402 protocol, payment limits, and 3P wallet integrations with Coinbase CDP and Stripe (Privy). (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/fe5861ae18b0b71616398dcbb54936a919af1d8f\"\u003efe5861ae\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-route53resolver:\u003c/strong\u003e  Adds supports for DNS64 on inbound endpoints and IPv6 forwarding through the internet gateway (IGW) on outbound endpoints, making it easier to manage hybrid DNS across IPv4 and IPv6 networks. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/8e6e18c603f2392b7b61d5f2efdfc54dab0d8126\"\u003e8e6e18c6\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eFor list of updated packages, view \u003cstrong\u003eupdated-packages.md\u003c/strong\u003e in \u003cstrong\u003eassets-3.1045.0.zip\u003c/strong\u003e\u003c/p\u003e\n\u003ch2\u003ev3.1044.0\u003c/h2\u003e\n\u003ch4\u003e3.1044.0(2026-05-06)\u003c/h4\u003e\n\u003ch5\u003eNew Features\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient-securityhub:\u003c/strong\u003e  Release GenerateRecommendedPolicyV2 and GetRecommendedPolicyV2 APIs. This supports generating and retrieving policy recommendations to remediate unused permissions findings that are now being supported on Security Hub. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/772b8629c270edee6fb4bb6874bb4036102d0f60\"\u003e772b8629\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-sagemaker:\u003c/strong\u003e  Amazon SageMaker HyperPod now returns ImageVersionStatus in DescribeCluster, DescribeClusterNode, and ListClusterNodes responses, indicating whether cluster instances are running the latest available image version. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/2be7e6b4b07f9732823fbb6b9b6e0c78b640e44f\"\u003e2be7e6b4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-glue:\u003c/strong\u003e  Adds support for a CustomLogGroupPrefix parameter in StartDataQualityRulesetEvaluationRun to specify custom CloudWatch log group paths, and a RulesetName filter in ListDataQualityRulesetEvaluationRuns to filter evaluation runs by ruleset name. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/b95d850bd64dae6c73588e9035803b9924781a4d\"\u003eb95d850b\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-lex-models-v2:\u003c/strong\u003e  Amazon Lex V2 introduces audio filler support for speech-to-speech bots. Configure melody or typing sounds that play during backend processing to reduce perceived latency and maintain a natural conversational experience for callers. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/01426f8e5c9073cdf81e7bd2a6d816156bd81249\"\u003e01426f8e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-bedrock-agentcore-control:\u003c/strong\u003e  Adds support for bring-your-own file system in AgentCore Runtime. Developers can mount Amazon S3 Files and Amazon EFS access points directly into agent sessions using filesystemConfigurations. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/e20f24d92f340e25371fa4b00e1321b627211b98\"\u003ee20f24d9\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-s3:\u003c/strong\u003e  Validate outpost access point resource name (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/bee88a56c5d1e8ffe9b2953117d81f4fc221ac68\"\u003ebee88a56\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-mwaa:\u003c/strong\u003e  Amazon MWAA now supports a PublicAndPrivate webserver access mode. The Airflow web server is accessible over both public and private endpoints, enabling workers in VPCs without internet access to reach the Task API privately while retaining public access to the Airflow UI. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/3a6054ef54e1f8afbc167fa27761c1cd36dffa5e\"\u003e3a6054ef\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient-imagebuilder:\u003c/strong\u003e  The ImportDiskImage API now enforces a maximum character limit of 128 characters on the image name field. (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/7fc2565c6b8b25d3257729b962125cffe00e5c42\"\u003e7fc2565c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003eTests\u003c/h5\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003escripts:\u003c/strong\u003e  include type symbols in api snapshot test (\u003ca href=\"https://redirect.github.com/aws/aws-sdk-js-v3/pull/7985\"\u003e#7985\u003c/a\u003e) (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/02f86176e779ecd6f7e9802b92fc15080803973b\"\u003e02f86176\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003eFor list of updated packages, view \u003cstrong\u003eupdated-packages.md\u003c/strong\u003e in \u003cstrong\u003eassets-3.1044.0.zip\u003c/strong\u003e\u003c/p\u003e\n\u003ch2\u003ev3.1043.0\u003c/h2\u003e\n\u003ch4\u003e3.1043.0(2026-05-05)\u003c/h4\u003e\n\u003ch5\u003eNew Features\u003c/h5\u003e\n\u003c!-- 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/aws/aws-sdk-js-v3/blob/main/clients/client-s3/CHANGELOG.md\"\u003e@​aws-sdk/client-s3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1044.0...v3.1045.0\"\u003e3.1045.0\u003c/a\u003e (2026-05-07)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​aws-sdk/client-s3\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1043.0...v3.1044.0\"\u003e3.1044.0\u003c/a\u003e (2026-05-06)\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient-s3:\u003c/strong\u003e Validate outpost access point resource name (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/bee88a56c5d1e8ffe9b2953117d81f4fc221ac68\"\u003ebee88a5\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1042.0...v3.1043.0\"\u003e3.1043.0\u003c/a\u003e (2026-05-05)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​aws-sdk/client-s3\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1041.0...v3.1042.0\"\u003e3.1042.0\u003c/a\u003e (2026-05-04)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​aws-sdk/client-s3\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1040.0...v3.1041.0\"\u003e3.1041.0\u003c/a\u003e (2026-05-01)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​aws-sdk/client-s3\u003c/code\u003e\u003c/p\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/compare/v3.1039.0...v3.1040.0\"\u003e3.1040.0\u003c/a\u003e (2026-04-30)\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​aws-sdk/client-s3\u003c/code\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/aws/aws-sdk-js-v3/commit/b329def5fdfa4fc2f311a66553d6b3782f78d4ce\"\u003e\u003ccode\u003eb329def\u003c/code\u003e\u003c/a\u003e Publish v3.1045.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/1ccd438a189e58745a6f25f5dec7ecd83120f7a8\"\u003e\u003ccode\u003e1ccd438\u003c/code\u003e\u003c/a\u003e Publish v3.1044.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/bee88a56c5d1e8ffe9b2953117d81f4fc221ac68\"\u003e\u003ccode\u003ebee88a5\u003c/code\u003e\u003c/a\u003e feat(client-s3): Validate outpost access point resource name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/96baad9d69cbc4157632d8e76753d19e5a13cd04\"\u003e\u003ccode\u003e96baad9\u003c/code\u003e\u003c/a\u003e Publish v3.1043.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/d942e31ae5787bc4f46e2fbe17b3e4116708097b\"\u003e\u003ccode\u003ed942e31\u003c/code\u003e\u003c/a\u003e Publish v3.1042.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/5df4c0175d3391ce5f5a8b9205f6466ac8a991dc\"\u003e\u003ccode\u003e5df4c01\u003c/code\u003e\u003c/a\u003e Publish v3.1041.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/7736067de09bf7aa1d3b9d776e93b97089e4941f\"\u003e\u003ccode\u003e7736067\u003c/code\u003e\u003c/a\u003e Publish v3.1040.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/51c8215fb4b32699b8304a03bbb9743c802acce9\"\u003e\u003ccode\u003e51c8215\u003c/code\u003e\u003c/a\u003e Publish v3.1039.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/3dfb72b7359b53da18c209e9211b38a1229357ac\"\u003e\u003ccode\u003e3dfb72b\u003c/code\u003e\u003c/a\u003e chore(codegen): sync for adaptive retry fixes (\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-s3/issues/7970\"\u003e#7970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commit/3fbf6c563843fd198085b3db2198af02ac09fede\"\u003e\u003ccode\u003e3fbf6c5\u003c/code\u003e\u003c/a\u003e Publish v3.1038.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-sdk-js-v3/commits/v3.1045.0/clients/client-s3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@upstash/redis` from 1.37.0 to 1.38.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/upstash/redis-js/releases\"\u003e@​upstash/redis's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​upstash/redis\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.38.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ec71f581: Separate read/write commands into separate pipelines in auto pipeline. As a\nresult, mixed read/write \u003ccode\u003ePromise.all\u003c/code\u003e batches may now be split across multiple\npipeline HTTP requests instead of a single request, and read-after-write\nordering may no longer be preserved within those mixed batches.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e@upstash/\u003ca href=\"mailto:redis@1.38.0-canary-20260505130836-8b3b33ccd367ba9ddb5b7f5ca33eb32ccf7e940d\"\u003eredis@1.38.0-canary-20260505130836-8b3b33ccd367ba9ddb5b7f5ca33eb32ccf7e940d\u003c/a\u003e\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDX-2506: add redis search into skills by \u003ca href=\"https://github.com/CahidArda\"\u003e\u003ccode\u003e@​CahidArda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/upstash/redis-js/pull/1427\"\u003eupstash/redis-js#1427\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: rename redis search analytics demo by \u003ca href=\"https://github.com/CahidArda\"\u003e\u003ccode\u003e@​CahidArda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/upstash/redis-js/pull/1428\"\u003eupstash/redis-js#1428\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDX-2555: add supply chain security settings by \u003ca href=\"https://github.com/CahidArda\"\u003e\u003ccode\u003e@​CahidArda\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/upstash/redis-js/pull/1429\"\u003eupstash/redis-js#1429\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: add version sync to ci by \u003ca href=\"https://github.com/alitariksahin\"\u003e\u003ccode\u003e@​alitariksahin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/upstash/redis-js/pull/1430\"\u003eupstash/redis-js#1430\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/upstash/redis-js/compare/@upstash/redis@1.37.0...@upstash/redis@1.38.0-canary-20260505130836-8b3b33ccd367ba9ddb5b7f5ca33eb32ccf7e940d\"\u003ehttps://github.com/upstash/redis-js/compare/@​upstash/redis@1.37.0...@​upstash/redis@1.38.0-canary-20260505130836-8b3b33ccd367ba9ddb5b7f5ca33eb32ccf7e940d\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/upstash/redis-js/commit/76075499bb10a1b124dbefc7b5468360da2bc1bf\"\u003e\u003ccode\u003e7607549\u003c/code\u003e\u003c/a\u003e chore: version packages (\u003ca href=\"https://redirect.github.com/upstash/redis-js/issues/1433\"\u003e#1433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/c71f5813f9d094c1aa5f425051eed49fc9b1e5fb\"\u003e\u003ccode\u003ec71f581\u003c/code\u003e\u003c/a\u003e DX-2577: Seperate read/write commands into seperate pipelines in auto pipelin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/e3a23ab7dfcc8c8fbee3fb8262fa4fad71559ad1\"\u003e\u003ccode\u003ee3a23ab\u003c/code\u003e\u003c/a\u003e fix: add version sync to ci (\u003ca href=\"https://redirect.github.com/upstash/redis-js/issues/1430\"\u003e#1430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/12e9a9ec278b89e6735170fea9c2edd0308d6e8b\"\u003e\u003ccode\u003e12e9a9e\u003c/code\u003e\u003c/a\u003e DX-2555: add supply chain security settings (\u003ca href=\"https://redirect.github.com/upstash/redis-js/issues/1429\"\u003e#1429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/f59fa759afd2148339c87213c21addd0ef9cdd57\"\u003e\u003ccode\u003ef59fa75\u003c/code\u003e\u003c/a\u003e fix: docs link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/c88b8e5b3dcad49dc6b2368837a427ce7c8944cb\"\u003e\u003ccode\u003ec88b8e5\u003c/code\u003e\u003c/a\u003e fix: rename redis search analytics demo (\u003ca href=\"https://redirect.github.com/upstash/redis-js/issues/1428\"\u003e#1428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/upstash/redis-js/commit/5d8abc14d13780dea4e609b42ea5b084b5db1a34\"\u003e\u003ccode\u003e5d8abc1\u003c/code\u003e\u003c/a\u003e feat: add redis search into skills (\u003ca href=\"https://redirect.github.com/upstash/redis-js/issues/1427\"\u003e#1427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/upstash/redis-js/compare/@upstash/redis@1.37.0...@upstash/redis@1.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lucide-react` from 1.7.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lucide-icons/lucide/releases\"\u003elucide-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.14.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003erepeat-off\u003c/code\u003e icon by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3102\"\u003elucide-icons/lucide#3102\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.13.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(docs): sync URL params with UI state on categories page by \u003ca href=\"https://github.com/taimar\"\u003e\u003ccode\u003e@​taimar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4111\"\u003elucide-icons/lucide#4111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): add \u003ccode\u003ewaves-vertical\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3867\"\u003elucide-icons/lucide#3867\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.12.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icon): add folder-bookmark icon by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4262\"\u003elucide-icons/lucide#4262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(readme): Update readme files by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4320\"\u003elucide-icons/lucide#4320\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003eastroid\u003c/code\u003e icon by \u003ca href=\"https://github.com/whoisBugsbunny\"\u003e\u003ccode\u003e@​whoisBugsbunny\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4217\"\u003elucide-icons/lucide#4217\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.10.0...1.12.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.10.0...1.12.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.11.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add missing period to TypeScript Support description by \u003ca href=\"https://github.com/jglu\"\u003e\u003ccode\u003e@​jglu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4309\"\u003elucide-icons/lucide#4309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(\u003ccode\u003e@​lucide/svelte\u003c/code\u003e): proper doc comments for svelte components by \u003ca href=\"https://github.com/blt-r\"\u003e\u003ccode\u003e@​blt-r\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4267\"\u003elucide-icons/lucide#4267\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump svgo from 3.3.2 to 3.3.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/lucide-icons/lucide/pull/4119\"\u003elucide-icons/lucide#4119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump astro from 6.0.8 to 6.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/lucide-icons/lucide/pull/4310\"\u003elucide-icons/lucide#4310\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): add power and quick tags to zap and zap-off by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4268\"\u003elucide-icons/lucide#4268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003etest(build-font): added comprehensive unit tests on build-font tool by \u003ca href=\"https://github.com/karsa-mistmere\"\u003e\u003ccode\u003e@​karsa-mistmere\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4315\"\u003elucide-icons/lucide#4315\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(docs): blur background of framework-select by \u003ca href=\"https://github.com/Spleefies\"\u003e\u003ccode\u003e@​Spleefies\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4238\"\u003elucide-icons/lucide#4238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icon): add heart-x icon  by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4264\"\u003elucide-icons/lucide#4264\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(icons): optimised \u003ccode\u003erotate-3d\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4299\"\u003elucide-icons/lucide#4299\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003elayers-minus\u003c/code\u003e icon by \u003ca href=\"https://github.com/Spleefies\"\u003e\u003ccode\u003e@​Spleefies\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4005\"\u003elucide-icons/lucide#4005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003ebell-check\u003c/code\u003e icon by \u003ca href=\"https://github.com/pettelau\"\u003e\u003ccode\u003e@​pettelau\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4152\"\u003elucide-icons/lucide#4152\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/jglu\"\u003e\u003ccode\u003e@​jglu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4309\"\u003elucide-icons/lucide#4309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pettelau\"\u003e\u003ccode\u003e@​pettelau\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4152\"\u003elucide-icons/lucide#4152\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.9.0...1.11.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.9.0...1.11.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.10.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: add missing period to TypeScript Support description by \u003ca href=\"https://github.com/jglu\"\u003e\u003ccode\u003e@​jglu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4309\"\u003elucide-icons/lucide#4309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(\u003ccode\u003e@​lucide/svelte\u003c/code\u003e): proper doc comments for svelte components by \u003ca href=\"https://github.com/blt-r\"\u003e\u003ccode\u003e@​blt-r\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4267\"\u003elucide-icons/lucide#4267\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump svgo from 3.3.2 to 3.3.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/lucide-icons/lucide/pull/4119\"\u003elucide-icons/lucide#4119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump astro from 6.0.8 to 6.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/lucide-icons/lucide/pull/4310\"\u003elucide-icons/lucide#4310\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/lucide-icons/lucide/commit/50d8af5a1012e188f3d71ac8f1fc0fba1aab5357\"\u003e\u003ccode\u003e50d8af5\u003c/code\u003e\u003c/a\u003e docs(readme): Update readme files (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4320\"\u003e#4320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/653e44b83293567ff24dcb90ca1094a9cf0a042a\"\u003e\u003ccode\u003e653e44b\u003c/code\u003e\u003c/a\u003e feat(packages): use .mjs for ESM bundles (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4285\"\u003e#4285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lucide-icons/lucide/commit/7623e23f787fe78e5075a613fd22da2cecbb9b1b\"\u003e\u003ccode\u003e7623e23\u003c/code\u003e\u003c/a\u003e feat(docs): add Zephyr Cloud to Hero Backers tier \u0026amp; rework updateSponsors scr...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/lucide-icons/lucide/commits/1.14.0/packages/lucide-react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openai` from 6.33.0 to 6.37.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/openai/openai-node/releases\"\u003eopenai's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.37.0\u003c/h2\u003e\n\u003ch2\u003e6.37.0 (2026-05-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/openai/openai-node/compare/v6.36.0...v6.37.0\"\u003ev6.36.0...v6.37.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add quantity field to admin organization usage responses (\u003ca href=\"https://github.com/openai/openai-node/commit/273a8f73e65839fb4d2ebc2a54ccc38383bd7517\"\u003e273a8f7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add web_search_call.results output option to responses (\u003ca href=\"https://github.com/openai/openai-node/commit/91c75e064f12946d3774cb182e5cd795000019ce\"\u003e91c75e0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e launch realtime translate + update image 2 (\u003ca href=\"https://github.com/openai/openai-node/commit/a296b661f0598ed001309d7deb693caa1596875c\"\u003ea296b66\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/794b90513f5ca63bd95c6cf774722fa6aeae293d\"\u003e794b905\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/69637293939580a9d20bd9274d86f23a012ffd87\"\u003e6963729\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e realtime 2 (\u003ca href=\"https://github.com/openai/openai-node/commit/f4b717702182adfc684270c0e7d5ff11d6c7a408\"\u003ef4b7177\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix imagegen \u003ccode\u003esize\u003c/code\u003e enum regression (\u003ca href=\"https://github.com/openai/openai-node/commit/4fe8469a7c1f892d586df375a449f6bd0e318b15\"\u003e4fe8469\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eredact api-key headers in debug logs (\u003ca href=\"https://github.com/openai/openai-node/commit/99c9c800e179c13659b96386dedd6c17dd6ffb8d\"\u003e99c9c80\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev6.36.0\u003c/h2\u003e\n\u003ch2\u003e6.36.0 (2026-05-01)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/openai/openai-node/compare/v6.35.0...v6.36.0\"\u003ev6.35.0...v6.36.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add group_type/user metadata fields, update types across admin resources (\u003ca href=\"https://github.com/openai/openai-node/commit/cc52f9755e3ce3b29ea2266482521c8d83ab88ad\"\u003ecc52f97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Admin API Keys per endpoint (\u003ca href=\"https://github.com/openai/openai-node/commit/770d187be1d6c0419002a9b01e7dec6a99761f94\"\u003e770d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e admin API updates (\u003ca href=\"https://github.com/openai/openai-node/commit/ee2bd2d8e66a5b90f80e6ca8ab4544385d9a5de3\"\u003eee2bd2d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/6af2b6dfd86e4d7e7a2cb5afb1275217fcd5d242\"\u003e6af2b6d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/f2dceda58fce6e44e740b56b9337597275d25e5b\"\u003ef2dceda\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e support admin api key auth (\u003ca href=\"https://github.com/openai/openai-node/commit/e3862a3d415ba3cedb178718e2c9bc0c2d09e01e\"\u003ee3862a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e tighten auth header selection (\u003ca href=\"https://github.com/openai/openai-node/commit/f1203bd884fb4131c54d9d7b8f89e9db3f4fc57c\"\u003ef1203bd\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eformat:\u003c/strong\u003e run eslint and prettier separately (\u003ca href=\"https://github.com/openai/openai-node/commit/104543a4daa138698006b1785ef7845d5ae0be27\"\u003e104543a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e codegen related update (\u003ca href=\"https://github.com/openai/openai-node/commit/05d86dac705c75f8b8c6e6d5630973451f798e75\"\u003e05d86da\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e codegen related update (\u003ca href=\"https://github.com/openai/openai-node/commit/f184586fbcb8c7c07bf439455d6317aba62719ec\"\u003ef184586\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/openai/openai-node/blob/master/CHANGELOG.md\"\u003eopenai's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.37.0 (2026-05-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/openai/openai-node/compare/v6.36.0...v6.37.0\"\u003ev6.36.0...v6.37.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add quantity field to admin organization usage responses (\u003ca href=\"https://github.com/openai/openai-node/commit/273a8f73e65839fb4d2ebc2a54ccc38383bd7517\"\u003e273a8f7\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add web_search_call.results output option to responses (\u003ca href=\"https://github.com/openai/openai-node/commit/91c75e064f12946d3774cb182e5cd795000019ce\"\u003e91c75e0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e launch realtime translate + update image 2 (\u003ca href=\"https://github.com/openai/openai-node/commit/a296b661f0598ed001309d7deb693caa1596875c\"\u003ea296b66\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/794b90513f5ca63bd95c6cf774722fa6aeae293d\"\u003e794b905\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/69637293939580a9d20bd9274d86f23a012ffd87\"\u003e6963729\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e realtime 2 (\u003ca href=\"https://github.com/openai/openai-node/commit/f4b717702182adfc684270c0e7d5ff11d6c7a408\"\u003ef4b7177\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix imagegen \u003ccode\u003esize\u003c/code\u003e enum regression (\u003ca href=\"https://github.com/openai/openai-node/commit/4fe8469a7c1f892d586df375a449f6bd0e318b15\"\u003e4fe8469\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eredact api-key headers in debug logs (\u003ca href=\"https://github.com/openai/openai-node/commit/99c9c800e179c13659b96386dedd6c17dd6ffb8d\"\u003e99c9c80\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.36.0 (2026-05-01)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/openai/openai-node/compare/v6.35.0...v6.36.0\"\u003ev6.35.0...v6.36.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add group_type/user metadata fields, update types across admin resources (\u003ca href=\"https://github.com/openai/openai-node/commit/cc52f9755e3ce3b29ea2266482521c8d83ab88ad\"\u003ecc52f97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Admin API Keys per endpoint (\u003ca href=\"https://github.com/openai/openai-node/commit/770d187be1d6c0419002a9b01e7dec6a99761f94\"\u003e770d187\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e admin API updates (\u003ca href=\"https://github.com/openai/openai-node/commit/ee2bd2d8e66a5b90f80e6ca8ab4544385d9a5de3\"\u003eee2bd2d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/6af2b6dfd86e4d7e7a2cb5afb1275217fcd5d242\"\u003e6af2b6d\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/openai/openai-node/commit/f2dceda58fce6e44e740b56b9337597275d25e5b\"\u003ef2dceda\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e support admin api key auth (\u003ca href=\"https://github.com/openai/openai-node/commit/e3862a3d415ba3cedb178718e2c9bc0c2d09e01e\"\u003ee3862a3\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e tighten auth header selection (\u003ca href=\"https://github.com/openai/openai-node/commit/f1203bd884fb4131c54d9d7b8f89e9db3f4fc57c\"\u003ef1203bd\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eformat:\u003c/strong\u003e run eslint and prettier separately (\u003ca href=\"https://github.com/openai/openai-node/commit/104543a4daa138698006b1785ef7845d5ae0be27\"\u003e104543a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e codegen related update (\u003ca href=\"https://github.com/openai/openai-node/commit/05d86dac705c75f8b8c6e6d5630973451f798e75\"\u003e05d86da\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e codegen related update (\u003ca href=\"https://github.com/openai/openai-node/commit/f184586fbcb8c7c07bf439455d6317aba62719ec\"\u003ef184586\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.35.0 (2026-04-28)\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/openai/openai-node/commit/b0e89cddad2e9ee4f8262c0f1157c7376ecf4156\"\u003e\u003ccode\u003eb0e89cd\u003c/code\u003e\u003c/a\u003e release: 6.37.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/21510635ece628e0063c324e390868385c9de3dd\"\u003e\u003ccode\u003e2151063\u003c/code\u003e\u003c/a\u003e feat(api): realtime 2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/a5c41848ba2eb0cfc412b54200b0b7e6acc99dab\"\u003e\u003ccode\u003ea5c4184\u003c/code\u003e\u003c/a\u003e feat(api): manual updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/17c79fb09ba7b6a36a9ee3d7d6b19c6502b15f2b\"\u003e\u003ccode\u003e17c79fb\u003c/code\u003e\u003c/a\u003e chore: redact api-key headers in debug logs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/36f69f6e078d308ed8876625d7d06fa210d649e5\"\u003e\u003ccode\u003e36f69f6\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/5cd49e4f1be6c894f7a76dd574e9fc20c637d379\"\u003e\u003ccode\u003e5cd49e4\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/a1b2c9c6b55506cfd24000552a68bd3c8d8ecbdc\"\u003e\u003ccode\u003ea1b2c9c\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/badc738fe03249b396a2eb6957bc854fec0bab99\"\u003e\u003ccode\u003ebadc738\u003c/code\u003e\u003c/a\u003e fix(api): fix imagegen \u003ccode\u003esize\u003c/code\u003e enum regression\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/15d48e0d25da50b083b8f721b5ecad41b0775de6\"\u003e\u003ccode\u003e15d48e0\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/openai/openai-node/commit/0ff2cdad1f3ba9e4d76eab7a9ca125b5cac6524f\"\u003e\u003ccode\u003e0ff2cda\u003c/code\u003e\u003c/a\u003e feat(api): add quantity field to admin organization usage responses\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/openai/openai-node/compare/v6.33.0...v6.37.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `react` from 19.2.4 to 19.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003ereact's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.2.6 (May 6th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eType hardening and performance improvements\n(\u003ca href=\"https://redirect.github.com/facebook/react/pull/36425\"\u003e#36425\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.2.5 (April 8th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd more cycle protections (\u003ca href=\"https://redirect.github.com/facebook/react/pull/36236\"\u003e#36236\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\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/facebook/react/commit/eaf3e95ca92be7a23d3c9cc8ffd6f199a40be401\"\u003e\u003ccode\u003eeaf3e95\u003c/code\u003e\u003c/a\u003e Version 19.2.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facebook/react/commit/23f4f9f30da9e9af2108c18bb197bae75ab584ea\"\u003e\u003ccode\u003e23f4f9f\u003c/code\u003e\u003c/a\u003e 19.2.5\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/facebook/react/commits/v19.2.6/packages/react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `react-dom` from 19.2.4 to 19.2.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/facebook/react/releases\"\u003ereact-dom's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e19.2.6 (May 6th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eType hardening and performance improvements\n(\u003ca href=\"https://redirect.github.com/facebook/react/pull/36425\"\u003e#36425\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e19.2.5 (April 8th, 2026)\u003c/h2\u003e\n\u003ch2\u003eReact Server Components\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd more cycle protections (\u003ca href=\"https://redirect.github.com/facebook/react/pull/36236\"\u003e#36236\u003c/a\u003e by \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/unstubbable\"\u003e\u003ccode\u003e@​unstubbable\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/facebook/react/commit/eaf3e95ca92be7a23d3c9cc8ffd6f199a40be401\"\u003e\u003ccode\u003eeaf3e95\u003c/code\u003e\u003c/a\u003e Version 19.2.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/facebook/react/commit/23f4f9f30da9e9af2108c18bb197bae75ab584ea\"\u003e\u003ccode\u003e23f4f9f\u003c/code\u003e\u003c/a\u003e 19.2.5\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/facebook/react/commits/v19.2.6/packages/react-dom\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwind-merge` from 3.5.0 to 3.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dcastil/tailwind-merge/releases\"\u003etailwind-merge's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.0\u003c/h2\u003e\n\u003ch3\u003eNew Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Tailwind CSS v4.3 by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/677\"\u003edcastil/tailwind-merge#677\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epostfixLookupClassGroups\u003c/code\u003e option to config to support Tailwind utilities where a slash is part of the full class name, like named container queries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdd support for readonly array values by \u003ca href=\"https://github.com/unional\"\u003e\u003ccode\u003e@​unional\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/652\"\u003edcastil/tailwind-merge#652\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in README by \u003ca href=\"https://github.com/maurer2\"\u003e\u003ccode\u003e@​maurer2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/662\"\u003edcastil/tailwind-merge#662\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHarden internal CI pipeline security by omitting git checkout by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e, suggested by \u003ca href=\"https://github.com/kyletaylored\"\u003e\u003ccode\u003e@​kyletaylored\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\"\u003ehttps://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ehttps://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/brandonmcconnell\"\u003e\u003ccode\u003e@​brandonmcconnell\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/manavm1990\"\u003e\u003ccode\u003e@​manavm1990\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/langy\"\u003e\u003ccode\u003e@​langy\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roboflow\"\u003e\u003ccode\u003e@​roboflow\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/syntaxfm\"\u003e\u003ccode\u003e@​syntaxfm\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/getsentry\"\u003e\u003ccode\u003e@​getsentry\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/codecov\"\u003e\u003ccode\u003e@​codecov\u003c/code\u003e\u003c/a\u003e, a private sponsor, \u003ca href=\"https://github.com/block\"\u003e\u003ccode\u003e@​block\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/openclaw\"\u003e\u003ccode\u003e@​openclaw\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sourcegraph\"\u003e\u003ccode\u003e@​sourcegraph\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mike-healy\"\u003e\u003ccode\u003e@​mike-healy\u003c/code\u003e\u003c/a\u003e and more via \u003ca href=\"https://github.com/thnxdev\"\u003e\u003ccode\u003e@​thnxdev\u003c/code\u003e\u003c/a\u003e for sponsoring tailwind-merge! ❤️\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/dcastil/tailwind-merge/commit/d54f7e5713c653d0171971405344f7c6e44d418f\"\u003e\u003ccode\u003ed54f7e5\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/638871a67a0a124ac9275eda77cd08b03f2f045e\"\u003e\u003ccode\u003e638871a\u003c/code\u003e\u003c/a\u003e Update README to add info about Tailwind CSS v4.3 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/39fc7b5e915493e5eb3ddb1ca615f5b2eeff2540\"\u003e\u003ccode\u003e39fc7b5\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;v3.6.0\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/bd8390f6ca387f93c9e989fb3fb09924fb843445\"\u003e\u003ccode\u003ebd8390f\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/802877c6e31f9fb64c627e5e760729a16cd0a69b\"\u003e\u003ccode\u003e802877c\u003c/code\u003e\u003c/a\u003e add v3.6.0 changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/a35fedac7d1fc8756223da94290a83a32068d2ae\"\u003e\u003ccode\u003ea35feda\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/665\"\u003e#665\u003c/a\u003e from dcastil/renovate/rollup-plugin-babel-7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/940389cf89ed0da277ff5c01b98fd619687926e9\"\u003e\u003ccode\u003e940389c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/667\"\u003e#667\u003c/a\u003e from dcastil/renovate/release-drafter-release-drafter...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/005af6df08cfbe2adac7ca6cb5a7be02b9261fbd\"\u003e\u003ccode\u003e005af6d\u003c/code\u003e\u003c/a\u003e pin to specific version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/5816ced627ebcaefd497ad8e4202baf750dd545c\"\u003e\u003ccode\u003e5816ced\u003c/code\u003e\u003c/a\u003e implement breaking changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/17041e17c5b9c96fcb0f4758c718799cb3af14a6\"\u003e\u003ccode\u003e17041e1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/676\"\u003e#676\u003c/a\u003e from dcastil/dependabot/npm_and_yarn/babel/plugin-tra...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zod` from 4.3.6 to 4.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/colinhacks/zod/releases\"\u003ezod's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.3\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e4c2fa95ce3f3390fbc522324e406b4e9e89b88f9 docs: use Zernio primary wordmark for gold sponsor logo\u003c/li\u003e\n\u003cli\u003e2aeec83eb135e3a83756e973ef44845fc5a455d2 docs: prune lapsed gold sponsors and rebalance logo sizing\u003c/li\u003e\n\u003cli\u003e7391be88ac1ee5cd02057f5ccc012a1f5df4efd0 docs: prune lapsed silver/bronze sponsors and add active ones\u003c/li\u003e\n\u003cli\u003e2c703322a21b4e2b12f33f49ea8430c451a68b4f docs: normalize bronze sponsor logos to github avatar pattern\u003c/li\u003e\n\u003cli\u003e9195250cab0e7950efe39c3926d6c203b4b0a170 docs: remove Mintlify from bronze sponsors (churned)\u003c/li\u003e\n\u003cli\u003eb8dffe9e62f17e6571e6249d05cc5102b54d94e4 docs: remove Numeric and Speakeasy (2+ missed monthly cycles)\u003c/li\u003e\n\u003cli\u003e1cab69383fcdeae2a366d5e2a2fc4d8fc765d168 fix(v4): restore catch handling for absent object keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5937\"\u003e#5937\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5939\"\u003e#5939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ec2be4f819064eed62c7c350a2d399b5faecd15f8 fix(v4): generalize optin/fallback to transform; restore preprocess on absent keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5941\"\u003e#5941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ef3c9ec03ba7a28ae72d25cc295f38674bee0f559 4.4.3\u003c/li\u003e\n\u003cli\u003e1fb56a5c18c27102dbc92260a4007c7732a0ccca docs: document release procedure in AGENTS.md\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.2\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e0c62df0ea19fd05abdf90473e9eef7eea530fab2 Clean up docs navigation and stale labels (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5901\"\u003e#5901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e20cc794895cc8604fe0c87d83a5d1c3f89fad0ac chore: add security policy and refresh tooling deps\u003c/li\u003e\n\u003cli\u003e6fbe07b0177efdd1bf1c0b05160e70d7a0702337 fix(docs): heading anchor links now include the hash so it doesnt scoll all the way up, follows navbar logic (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5791\"\u003e#5791\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e4bbed1b1c73eca4ce9e59b1189ed236aa6c8b5bd Tighten discriminated union option typing\u003c/li\u003e\n\u003cli\u003ebbac3e567e7fccfaaf7cdc97f1ce30c295e2c908 Update PR guidance for agents\u003c/li\u003e\n\u003cli\u003ecf0dc942a32805c292fff59ade20a7ace980735a Merge remote-tracking branch 'origin/main' into fix-discriminated-union-key-constraint\u003c/li\u003e\n\u003cli\u003e292c894a5fd2aa42e527900b83d8d7a3009a709c docs: add Zernio gold sponsor\u003c/li\u003e\n\u003cli\u003e1fc9f311c28dcf80d0bb5a36b177086cbc3d8eca docs: document codec inversion\u003c/li\u003e\n\u003cli\u003e1373c85da9aeff704a9762d27bc58699618aefb7 docs: remove AI disclosure guidance\u003c/li\u003e\n\u003cli\u003ee20d02b473c08e3a4e557bc610b1b5fac079b649 chore: ignore triage notes\u003c/li\u003e\n\u003cli\u003ee58ea4d91b1dfe8194b73508203213cbc7e9c936 docs: test Zod Mini tab code heights\u003c/li\u003e\n\u003cli\u003e905761a5d127e8d5dd2ebb3bc88c75cb0b8149ff docs: document preprocess input type narrowing\u003c/li\u003e\n\u003cli\u003ebf64bac850d4dee2b7dde7e64909d5d796d32043 chore: tighten test guidance in AGENTS.md\u003c/li\u003e\n\u003cli\u003e8ec4e73f4c4693b6361ad591be40fb41eb8a9f95 chore: update play.ts scratch\u003c/li\u003e\n\u003cli\u003e02c2baf7d0d615872fa4528a8020603b71211702 Make z.preprocess defer optionality to inner schema (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e88015df8e25c44fb5385eb3ef28935119cd5edea fix(docs): drop deprecated \u003ccode\u003ebaseUrl\u003c/code\u003e from tsconfig\u003c/li\u003e\n\u003cli\u003ec59d4474e3b4cad1b323462186cf607178ce8267 4.4.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.1\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e481f7be4238c83ed58183f921b2646f340a91c6a ci: gate release publishing on full test workflow\u003c/li\u003e\n\u003cli\u003e95ccab423aec720b2523c3a64cdc7e3204537cc7 test(v3): restore optional undefined expectations\u003c/li\u003e\n\u003cli\u003ecede2c63739a5823d6aa5093d291e9a111da943d fix(v4): reject tuple holes before required defaults (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eedd0bf0f5ada4a8dc581c259407d7bbad0a71ea7 release: 4.4.1\u003c/li\u003e\n\u003cli\u003e180d83d1dbe6a59260710cc8637a3dea2281ee56 docs: remove Jazz featured sponsor\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.0\u003c/h2\u003e\n\u003ch2\u003e4.4.0\u003c/h2\u003e\n\u003cp\u003eThis is a minor release with a wide set of correctness and soundness fixes. Some fixes intentionally make Zod stricter, so code that depended on previously accepted invalid or ambiguous inputs may need small updates.\u003c/p\u003e\n\u003ch2\u003ePotentially breaking bug fixes\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/colinhacks/zod/commit/1fb56a5c18c27102dbc92260a4007c7732a0ccca\"\u003e\u003ccode\u003e1fb56a5\u003c/code\u003e\u003c/a\u003e docs: document release procedure in AGENTS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/f3c9ec03ba7a28ae72d25cc295f38674bee0f559\"\u003e\u003ccode\u003ef3c9ec0\u003c/code\u003e\u003c/a\u003e 4.4.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/c2be4f819064eed62c7c350a2d399b5faecd15f8\"\u003e\u003ccode\u003ec2be4f8\u003c/code\u003e\u003c/a\u003e fix(v4): generalize optin/fallback to transform; restore preprocess on absent...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/1cab69383fcdeae2a366d5e2a2fc4d8fc765d168\"\u003e\u003ccode\u003e1cab693\u003c/code\u003e\u003c/a\u003e fix(v4): restore catch handling for absent object keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5937\"\u003e#5937\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5939\"\u003e#5939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/b8dffe9e62f17e6571e6249d05cc5102b54d94e4\"\u003e\u003ccode\u003eb8dffe9\u003c/code\u003e\u003c/a\u003e docs: remove Numeric and Speakeasy (2+ missed monthly cycles)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/9195250cab0e7950efe39c3926d6c203b4b0a170\"\u003e\u003ccode\u003e9195250\u003c/code\u003e\u003c/a\u003e docs: remove Mintlify from bronze sponsors (churned)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/2c703322a21b4e2b12f33f49ea8430c451a68b4f\"\u003e\u003ccode\u003e2c70332\u003c/code\u003e\u003c/a\u003e docs: normalize bronze sponsor logos to github avatar pattern\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/7391be88ac1ee5cd02057f5ccc012a1f5df4efd0\"\u003e\u003ccode\u003e7391be8\u003c/code\u003e\u003c/a\u003e docs: prune lapsed silver/bronze sponsors and add active ones\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/2aeec83eb135e3a83756e973ef44845fc5a455d2\"\u003e\u003ccode\u003e2aeec83\u003c/code\u003e\u003c/a\u003e docs: prune lapsed gold sponsors and rebalance logo sizing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/4c2fa95ce3f3390fbc522324e406b4e9e89b88f9\"\u003e\u003ccode\u003e4c2fa95\u003c/code\u003e\u003c/a\u003e docs: use Zernio primary wordmark for gold sponsor logo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/colinhacks/zod/compare/v4.3.6...v4.4.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 zod since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@next/bundle-analyzer` from 16.2.2 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\"\u003e@​next/bundle-analyzer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.2.6\u003c/h2\u003e\n\u003cp\u003eThis release contains security fixes for the following advisories:\u003c/p\u003e\n\u003cp\u003eHigh:\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 - Incomplete Fix Follow-Up\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\u003eModerate:\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\u003eLow:\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\u003ch2\u003ev16.2.5\u003c/h2\u003e\n\u003cp\u003eThis release contains security fixes for the following advisories:\u003c/p\u003e\n\u003cp\u003eHigh:\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\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\u003eModerate:\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\u003eLow:\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\u003ch2\u003ev16.2.4\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release is backporting 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\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003echore: Bump reqwest to 0.13.2 (Fixes Google Fonts with Turbopack for Windows on ARM64) (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/packages/next-bundle-analyzer/issues/92713\"\u003e#92713\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\u003eSee full diff in \u003ca href=\"https://github.com/vercel/next.js/commits/v16.2.6/packages/next-bundle-analyzer\"\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@​next/bundle-analyzer\u003c/code\u003e since your current version.\u003c/p\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/playw...\n\n_Description has been truncated_","html_url":"https://github.com/manumu-studio/learning-speaking-app/pull/64","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/manumu-studio%2Flearning-speaking-app/issues/64","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/64/packages"}},{"old_version":"4.2.4","new_version":"4.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-11T22:55:37.000Z","version_change":"4.2.4 → 4.3.0","issue":{"uuid":"4424865348","node_id":"PR_kwDONNBgac7adE0E","number":170,"state":"open","title":"deps(deps): bump the production-dependencies group across 1 directory with 8 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T22:55:37.000Z","updated_at":"2026-05-11T23:06:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): bump","group_name":"production-dependencies","update_count":8,"packages":[{"name":"@clerk/nextjs","old_version":"7.2.7","new_version":"7.3.3","repository_url":"https://github.com/clerk/javascript"},{"name":"lucide-react","old_version":"1.11.0","new_version":"1.14.0","repository_url":"https://github.com/lucide-icons/lucide"},{"name":"resend","old_version":"6.12.2","new_version":"6.12.3","repository_url":"https://github.com/resend/resend-node"},{"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.13","repository_url":"https://github.com/pmndrs/zustand"},{"name":"@ast-grep/napi-linux-x64-gnu","old_version":"0.42.1","new_version":"0.42.2","repository_url":"https://github.com/ast-grep/ast-grep"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the production-dependencies group with 8 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@clerk/nextjs](https://github.com/clerk/javascript/tree/HEAD/packages/nextjs) | `7.2.7` | `7.3.3` |\n| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `1.11.0` | `1.14.0` |\n| [resend](https://github.com/resend/resend-node) | `6.12.2` | `6.12.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.13` |\n| [@ast-grep/napi-linux-x64-gnu](https://github.com/ast-grep/ast-grep) | `0.42.1` | `0.42.2` |\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\n\nUpdates `@clerk/nextjs` from 7.2.7 to 7.3.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/clerk/javascript/releases\"\u003e@​clerk/nextjs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​clerk/nextjs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.3.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/clerk/javascript/commit/0ab09a89af1d7452df734278288e8218710f0e0e\"\u003e\u003ccode\u003e0ab09a8\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/6408ab6ec58d06af3f8334cb5a7d8d2647b8012e\"\u003e\u003ccode\u003e6408ab6\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/5cda3ee8451cc9af375895824d24a5c3ed7fbee6\"\u003e\u003ccode\u003e5cda3ee\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.2\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​clerk/nextjs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.3.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eImproved \u003ccode\u003eauth()\u003c/code\u003e error message when \u003ccode\u003eclerkMiddleware()\u003c/code\u003e is not detected to mention that infrastructure issues (e.g. edge runtime errors or platform outages) can also cause this error. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8007\"\u003e#8007\u003c/a\u003e) by \u003ca href=\"https://github.com/jacekradko\"\u003e\u003ccode\u003e@​jacekradko\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/clerk/javascript/commit/7a5892f9bcaa1a6212e6e6d3741160929ffd027e\"\u003e\u003ccode\u003e7a5892f\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​clerk/nextjs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.3.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnforce middleware authorization during the keyless bootstrap window. \u003ccode\u003eauth.protect()\u003c/code\u003e and custom authorization checks now fail closed instead of being bypassed while the publishable key is being provisioned. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8369\"\u003e#8369\u003c/a\u003e) by \u003ca href=\"https://github.com/jacekradko\"\u003e\u003ccode\u003e@​jacekradko\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/clerk/javascript/commit/9e9230c8c3cbdb1c253ca7cdd24cc8d681b5ee5a\"\u003e\u003ccode\u003e9e9230c\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/68d32dfcc453080ef93edf69be8de765a342d88c\"\u003e\u003ccode\u003e68d32df\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/1c27d4dd41a27cf41c3823306fe88e026fed08fb\"\u003e\u003ccode\u003e1c27d4d\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/10011936981fc22bf7d3750f1591f0873ea78bcb\"\u003e\u003ccode\u003e1001193\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ccode\u003e@​clerk/nextjs\u003c/code\u003e\u003ca href=\"https://github.com/7\"\u003e\u003ccode\u003e@​7\u003c/code\u003e\u003c/a\u003e.3.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eExpose \u003ccode\u003eOAuthConsent\u003c/code\u003e as a public component export across React-based SDKs. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8381\"\u003e#8381\u003c/a\u003e) by \u003ca href=\"https://github.com/wobsoriano\"\u003e\u003ccode\u003e@​wobsoriano\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eExample:\u003c/p\u003e\n\u003cpre lang=\"tsx\"\u003e\u003ccode\u003eimport { OAuthConsent } from '@clerk/react';\n\u003cp\u003eexport default function Page() {\nreturn \u0026lt;OAuthConsent /\u0026gt;;\n}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/clerk/javascript/commit/785f057f5cda202c26a9f34bde7c1873a6cbd6ea\"\u003e\u003ccode\u003e785f057\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/90beaeb8319d5bccb8fa52343f4b241c6d2d3ebe\"\u003e\u003ccode\u003e90beaeb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/244920d1ebb5d420a96bfc2a79d84cccafe9b61c\"\u003e\u003ccode\u003e244920d\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.9.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.5.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.4\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/clerk/javascript/blob/main/packages/nextjs/CHANGELOG.md\"\u003e@​clerk/nextjs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.3.3\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/clerk/javascript/commit/0ab09a89af1d7452df734278288e8218710f0e0e\"\u003e\u003ccode\u003e0ab09a8\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/6408ab6ec58d06af3f8334cb5a7d8d2647b8012e\"\u003e\u003ccode\u003e6408ab6\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/5cda3ee8451cc9af375895824d24a5c3ed7fbee6\"\u003e\u003ccode\u003e5cda3ee\u003c/code\u003e\u003c/a\u003e]:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.2\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.3.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eImproved \u003ccode\u003eauth()\u003c/code\u003e error message when \u003ccode\u003eclerkMiddleware()\u003c/code\u003e is not detected to mention that infrastructure issues (e.g. edge runtime errors or platform outages) can also cause this error. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8007\"\u003e#8007\u003c/a\u003e) by \u003ca href=\"https://github.com/jacekradko\"\u003e\u003ccode\u003e@​jacekradko\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/clerk/javascript/commit/7a5892f9bcaa1a6212e6e6d3741160929ffd027e\"\u003e\u003ccode\u003e7a5892f\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.6\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.3.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eEnforce middleware authorization during the keyless bootstrap window. \u003ccode\u003eauth.protect()\u003c/code\u003e and custom authorization checks now fail closed instead of being bypassed while the publishable key is being provisioned. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8369\"\u003e#8369\u003c/a\u003e) by \u003ca href=\"https://github.com/jacekradko\"\u003e\u003ccode\u003e@​jacekradko\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/clerk/javascript/commit/9e9230c8c3cbdb1c253ca7cdd24cc8d681b5ee5a\"\u003e\u003ccode\u003e9e9230c\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/68d32dfcc453080ef93edf69be8de765a342d88c\"\u003e\u003ccode\u003e68d32df\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/1c27d4dd41a27cf41c3823306fe88e026fed08fb\"\u003e\u003ccode\u003e1c27d4d\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/10011936981fc22bf7d3750f1591f0873ea78bcb\"\u003e\u003ccode\u003e1001193\u003c/code\u003e\u003c/a\u003e]:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/shared\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.10.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/react\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.6.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​clerk/backend\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e7.3.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eExpose \u003ccode\u003eOAuthConsent\u003c/code\u003e as a public component export across React-based SDKs. (\u003ca href=\"https://redirect.github.com/clerk/javascript/pull/8381\"\u003e#8381\u003c/a\u003e) by \u003ca href=\"https://github.com/wobsoriano\"\u003e\u003ccode\u003e@​wobsoriano\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eExample:\u003c/p\u003e\n\u003cpre lang=\"tsx\"\u003e\u003ccode\u003eimport { OAuthConsent } from '@clerk/react';\n\u003cp\u003eexport default function Page() {\nreturn \u0026lt;OAuthConsent /\u0026gt;;\n}\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [\u003ca href=\"https://github.com/clerk/javascript/commit/785f057f5cda202c26a9f34bde7c1873a6cbd6ea\"\u003e\u003ccode\u003e785f057\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/90beaeb8319d5bccb8fa52343f4b241c6d2d3ebe\"\u003e\u003ccode\u003e90beaeb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clerk/javascript/commit/244920d1ebb5d420a96bfc2a79d84cccafe9b61c\"\u003e\u003ccode\u003e244920d\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/clerk/javascript/commit/ba158acdd8a7292c7a4647702fa5fc9f57019d43\"\u003e\u003ccode\u003eba158ac\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8501\"\u003e#8501\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/4c44aa6586b032313d552e37701ecc5f2c9606e4\"\u003e\u003ccode\u003e4c44aa6\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8484\"\u003e#8484\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/30ec271cacbfe57b1c71dcd53f3f1ca5e6c5525c\"\u003e\u003ccode\u003e30ec271\u003c/code\u003e\u003c/a\u003e fix(nextjs): improve auth() error message to mention infrastructure failures ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/cd6c4b7fcf989b5410f057138941ab47ca8afb3b\"\u003e\u003ccode\u003ecd6c4b7\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8440\"\u003e#8440\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/f1d257db7376603ce4577086151231dac995d6ce\"\u003e\u003ccode\u003ef1d257d\u003c/code\u003e\u003c/a\u003e fix(nextjs): enforce middleware authorization during keyless bootstrap (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8369\"\u003e#8369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/b2e702e25adfc107ce772bb191d466ec0c7143fa\"\u003e\u003ccode\u003eb2e702e\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8438\"\u003e#8438\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/244920d1ebb5d420a96bfc2a79d84cccafe9b61c\"\u003e\u003ccode\u003e244920d\u003c/code\u003e\u003c/a\u003e chore(clerk-js,ui): Make OAuthConsent component public (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8381\"\u003e#8381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/76808591a9adb9c8ed53ecd40f291187a10ab4ee\"\u003e\u003ccode\u003e7680859\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8433\"\u003e#8433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/e85de1920380c6ad4b74f0161379606c75a4e9e7\"\u003e\u003ccode\u003ee85de19\u003c/code\u003e\u003c/a\u003e ci(repo): Version packages (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8413\"\u003e#8413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/clerk/javascript/commit/9b5798696eb0c6cc6ab548ade100b504f691895c\"\u003e\u003ccode\u003e9b57986\u003c/code\u003e\u003c/a\u003e feat(*): auto-proxy for eligible hosts (\u003ca href=\"https://github.com/clerk/javascript/tree/HEAD/packages/nextjs/issues/8035\"\u003e#8035\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/clerk/javascript/commits/@clerk/nextjs@7.3.3/packages/nextjs\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `lucide-react` from 1.11.0 to 1.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lucide-icons/lucide/releases\"\u003elucide-react's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.14.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003erepeat-off\u003c/code\u003e icon by \u003ca href=\"https://github.com/jguddas\"\u003e\u003ccode\u003e@​jguddas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3102\"\u003elucide-icons/lucide#3102\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.13.0...1.14.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.13.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(docs): sync URL params with UI state on categories page by \u003ca href=\"https://github.com/taimar\"\u003e\u003ccode\u003e@​taimar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4111\"\u003elucide-icons/lucide#4111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): add \u003ccode\u003ewaves-vertical\u003c/code\u003e icon by \u003ca href=\"https://github.com/jamiemlaw\"\u003e\u003ccode\u003e@​jamiemlaw\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/3867\"\u003elucide-icons/lucide#3867\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.12.0...1.13.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.12.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat(icon): add folder-bookmark icon by \u003ca href=\"https://github.com/swastik7805\"\u003e\u003ccode\u003e@​swastik7805\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4262\"\u003elucide-icons/lucide#4262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs(readme): Update readme files by \u003ca href=\"https://github.com/ericfennis\"\u003e\u003ccode\u003e@​ericfennis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4320\"\u003elucide-icons/lucide#4320\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(icons): added \u003ccode\u003eastroid\u003c/code\u003e icon by \u003ca href=\"https://github.com/whoisBugsbunny\"\u003e\u003ccode\u003e@​whoisBugsbunny\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lucide-icons/lucide/pull/4217\"\u003elucide-icons/lucide#4217\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/lucide-icons/lucide/compare/1.10.0...1.12.0\"\u003ehttps://github.com/lucide-icons/lucide/compare/1.10.0...1.12.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/lucide-icons/lucide/commit/50d8af5a1012e188f3d71ac8f1fc0fba1aab5357\"\u003e\u003ccode\u003e50d8af5\u003c/code\u003e\u003c/a\u003e docs(readme): Update readme files (\u003ca href=\"https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react/issues/4320\"\u003e#4320\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/lucide-icons/lucide/commits/1.14.0/packages/lucide-react\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `resend` from 6.12.2 to 6.12.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/resend/resend-node/releases\"\u003eresend's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.12.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\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/resend/resend-node/pull/940\"\u003eresend/resend-node#940\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): upgrade \u003ccode\u003esvix\u003c/code\u003e to silence GHSA-w5hq-g745-h8pq by \u003ca href=\"https://github.com/ulrichstark\"\u003e\u003ccode\u003e@​ulrichstark\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/942\"\u003eresend/resend-node#942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: correct \u003ccode\u003epaylaod\u003c/code\u003e into \u003ccode\u003epayload\u003c/code\u003e typo in contacts overload signatures by \u003ca href=\"https://github.com/wesleyramalho\"\u003e\u003ccode\u003e@​wesleyramalho\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/902\"\u003eresend/resend-node#902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency tsdown to v0.21.10 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/resend/resend-node/pull/929\"\u003eresend/resend-node#929\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​biomejs/biome\u003c/code\u003e to v2.4.14 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/resend/resend-node/pull/943\"\u003eresend/resend-node#943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: add missing suppressed event to resend node sdk interface by \u003ca href=\"https://github.com/dielduarte\"\u003e\u003ccode\u003e@​dielduarte\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/946\"\u003eresend/resend-node#946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump sdk version to 6.12.3 by \u003ca href=\"https://github.com/dielduarte\"\u003e\u003ccode\u003e@​dielduarte\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/947\"\u003eresend/resend-node#947\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/ulrichstark\"\u003e\u003ccode\u003e@​ulrichstark\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/942\"\u003eresend/resend-node#942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/wesleyramalho\"\u003e\u003ccode\u003e@​wesleyramalho\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/902\"\u003eresend/resend-node#902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dielduarte\"\u003e\u003ccode\u003e@​dielduarte\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/resend/resend-node/pull/946\"\u003eresend/resend-node#946\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/resend/resend-node/compare/v6.12.2...v6.12.3\"\u003ehttps://github.com/resend/resend-node/compare/v6.12.2...v6.12.3\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/resend/resend-node/commit/3f41290fbef582bca0216dc343561b7723c057ce\"\u003e\u003ccode\u003e3f41290\u003c/code\u003e\u003c/a\u003e chore: bump sdk version to 6.12.3 (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/947\"\u003e#947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/2679c32e0d76ac269897458655d2e6671593b2ba\"\u003e\u003ccode\u003e2679c32\u003c/code\u003e\u003c/a\u003e chore: add missing suppressed event to resend node sdk interface (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/946\"\u003e#946\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/08cb7a13710901d0bda0e83d8385e44302e1d6de\"\u003e\u003ccode\u003e08cb7a1\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​biomejs/biome\u003c/code\u003e to v2.4.14 (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/943\"\u003e#943\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/20741e3ac6fa26c5697ff2b878c33a288ca868e3\"\u003e\u003ccode\u003e20741e3\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency tsdown to v0.21.10 (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/929\"\u003e#929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/4e26bc0580f483c8a336e40056a96e46811052c6\"\u003e\u003ccode\u003e4e26bc0\u003c/code\u003e\u003c/a\u003e fix: correct \u003ccode\u003epaylaod\u003c/code\u003e into \u003ccode\u003epayload\u003c/code\u003e typo in contacts overload signatures (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/9ca7487ac4127baf66fb622b7fd2aba45919a14f\"\u003e\u003ccode\u003e9ca7487\u003c/code\u003e\u003c/a\u003e chore(deps): upgrade \u003ccode\u003esvix\u003c/code\u003e to silence GHSA-w5hq-g745-h8pq (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/942\"\u003e#942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/resend/resend-node/commit/6759d31638a9d8537a27b593a94e5114b168127a\"\u003e\u003ccode\u003e6759d31\u003c/code\u003e\u003c/a\u003e chore(deps): update pnpm to v10.33.2 (\u003ca href=\"https://redirect.github.com/resend/resend-node/issues/940\"\u003e#940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/resend/resend-node/compare/v6.12.2...v6.12.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwind-merge` from 3.5.0 to 3.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dcastil/tailwind-merge/releases\"\u003etailwind-merge's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.0\u003c/h2\u003e\n\u003ch3\u003eNew Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Tailwind CSS v4.3 by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/677\"\u003edcastil/tailwind-merge#677\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epostfixLookupClassGroups\u003c/code\u003e option to config to support Tailwind utilities where a slash is part of the full class name, like named container queries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdd support for readonly array values by \u003ca href=\"https://github.com/unional\"\u003e\u003ccode\u003e@​unional\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/652\"\u003edcastil/tailwind-merge#652\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in README by \u003ca href=\"https://github.com/maurer2\"\u003e\u003ccode\u003e@​maurer2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/662\"\u003edcastil/tailwind-merge#662\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHarden internal CI pipeline security by omitting git checkout by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e, suggested by \u003ca href=\"https://github.com/kyletaylored\"\u003e\u003ccode\u003e@​kyletaylored\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\"\u003ehttps://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ehttps://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/brandonmcconnell\"\u003e\u003ccode\u003e@​brandonmcconnell\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/manavm1990\"\u003e\u003ccode\u003e@​manavm1990\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/langy\"\u003e\u003ccode\u003e@​langy\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roboflow\"\u003e\u003ccode\u003e@​roboflow\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/syntaxfm\"\u003e\u003ccode\u003e@​syntaxfm\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/getsentry\"\u003e\u003ccode\u003e@​getsentry\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/codecov\"\u003e\u003ccode\u003e@​codecov\u003c/code\u003e\u003c/a\u003e, a private sponsor, \u003ca href=\"https://github.com/block\"\u003e\u003ccode\u003e@​block\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/openclaw\"\u003e\u003ccode\u003e@​openclaw\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sourcegraph\"\u003e\u003ccode\u003e@​sourcegraph\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mike-healy\"\u003e\u003ccode\u003e@​mike-healy\u003c/code\u003e\u003c/a\u003e and more via \u003ca href=\"https://github.com/thnxdev\"\u003e\u003ccode\u003e@​thnxdev\u003c/code\u003e\u003c/a\u003e for sponsoring tailwind-merge! ❤️\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/dcastil/tailwind-merge/commit/d54f7e5713c653d0171971405344f7c6e44d418f\"\u003e\u003ccode\u003ed54f7e5\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/638871a67a0a124ac9275eda77cd08b03f2f045e\"\u003e\u003ccode\u003e638871a\u003c/code\u003e\u003c/a\u003e Update README to add info about Tailwind CSS v4.3 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/39fc7b5e915493e5eb3ddb1ca615f5b2eeff2540\"\u003e\u003ccode\u003e39fc7b5\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;v3.6.0\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/bd8390f6ca387f93c9e989fb3fb09924fb843445\"\u003e\u003ccode\u003ebd8390f\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/802877c6e31f9fb64c627e5e760729a16cd0a69b\"\u003e\u003ccode\u003e802877c\u003c/code\u003e\u003c/a\u003e add v3.6.0 changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/a35fedac7d1fc8756223da94290a83a32068d2ae\"\u003e\u003ccode\u003ea35feda\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/665\"\u003e#665\u003c/a\u003e from dcastil/renovate/rollup-plugin-babel-7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/940389cf89ed0da277ff5c01b98fd619687926e9\"\u003e\u003ccode\u003e940389c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/667\"\u003e#667\u003c/a\u003e from dcastil/renovate/release-drafter-release-drafter...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/005af6df08cfbe2adac7ca6cb5a7be02b9261fbd\"\u003e\u003ccode\u003e005af6d\u003c/code\u003e\u003c/a\u003e pin to specific version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/5816ced627ebcaefd497ad8e4202baf750dd545c\"\u003e\u003ccode\u003e5816ced\u003c/code\u003e\u003c/a\u003e implement breaking changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/17041e17c5b9c96fcb0f4758c718799cb3af14a6\"\u003e\u003ccode\u003e17041e1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/676\"\u003e#676\u003c/a\u003e from dcastil/dependabot/npm_and_yarn/babel/plugin-tra...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zod` from 4.3.6 to 4.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/colinhacks/zod/releases\"\u003ezod's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.4.3\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e4c2fa95ce3f3390fbc522324e406b4e9e89b88f9 docs: use Zernio primary wordmark for gold sponsor logo\u003c/li\u003e\n\u003cli\u003e2aeec83eb135e3a83756e973ef44845fc5a455d2 docs: prune lapsed gold sponsors and rebalance logo sizing\u003c/li\u003e\n\u003cli\u003e7391be88ac1ee5cd02057f5ccc012a1f5df4efd0 docs: prune lapsed silver/bronze sponsors and add active ones\u003c/li\u003e\n\u003cli\u003e2c703322a21b4e2b12f33f49ea8430c451a68b4f docs: normalize bronze sponsor logos to github avatar pattern\u003c/li\u003e\n\u003cli\u003e9195250cab0e7950efe39c3926d6c203b4b0a170 docs: remove Mintlify from bronze sponsors (churned)\u003c/li\u003e\n\u003cli\u003eb8dffe9e62f17e6571e6249d05cc5102b54d94e4 docs: remove Numeric and Speakeasy (2+ missed monthly cycles)\u003c/li\u003e\n\u003cli\u003e1cab69383fcdeae2a366d5e2a2fc4d8fc765d168 fix(v4): restore catch handling for absent object keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5937\"\u003e#5937\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5939\"\u003e#5939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ec2be4f819064eed62c7c350a2d399b5faecd15f8 fix(v4): generalize optin/fallback to transform; restore preprocess on absent keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5941\"\u003e#5941\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ef3c9ec03ba7a28ae72d25cc295f38674bee0f559 4.4.3\u003c/li\u003e\n\u003cli\u003e1fb56a5c18c27102dbc92260a4007c7732a0ccca docs: document release procedure in AGENTS.md\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.2\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e0c62df0ea19fd05abdf90473e9eef7eea530fab2 Clean up docs navigation and stale labels (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5901\"\u003e#5901\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e20cc794895cc8604fe0c87d83a5d1c3f89fad0ac chore: add security policy and refresh tooling deps\u003c/li\u003e\n\u003cli\u003e6fbe07b0177efdd1bf1c0b05160e70d7a0702337 fix(docs): heading anchor links now include the hash so it doesnt scoll all the way up, follows navbar logic (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5791\"\u003e#5791\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e4bbed1b1c73eca4ce9e59b1189ed236aa6c8b5bd Tighten discriminated union option typing\u003c/li\u003e\n\u003cli\u003ebbac3e567e7fccfaaf7cdc97f1ce30c295e2c908 Update PR guidance for agents\u003c/li\u003e\n\u003cli\u003ecf0dc942a32805c292fff59ade20a7ace980735a Merge remote-tracking branch 'origin/main' into fix-discriminated-union-key-constraint\u003c/li\u003e\n\u003cli\u003e292c894a5fd2aa42e527900b83d8d7a3009a709c docs: add Zernio gold sponsor\u003c/li\u003e\n\u003cli\u003e1fc9f311c28dcf80d0bb5a36b177086cbc3d8eca docs: document codec inversion\u003c/li\u003e\n\u003cli\u003e1373c85da9aeff704a9762d27bc58699618aefb7 docs: remove AI disclosure guidance\u003c/li\u003e\n\u003cli\u003ee20d02b473c08e3a4e557bc610b1b5fac079b649 chore: ignore triage notes\u003c/li\u003e\n\u003cli\u003ee58ea4d91b1dfe8194b73508203213cbc7e9c936 docs: test Zod Mini tab code heights\u003c/li\u003e\n\u003cli\u003e905761a5d127e8d5dd2ebb3bc88c75cb0b8149ff docs: document preprocess input type narrowing\u003c/li\u003e\n\u003cli\u003ebf64bac850d4dee2b7dde7e64909d5d796d32043 chore: tighten test guidance in AGENTS.md\u003c/li\u003e\n\u003cli\u003e8ec4e73f4c4693b6361ad591be40fb41eb8a9f95 chore: update play.ts scratch\u003c/li\u003e\n\u003cli\u003e02c2baf7d0d615872fa4528a8020603b71211702 Make z.preprocess defer optionality to inner schema (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5929\"\u003e#5929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e88015df8e25c44fb5385eb3ef28935119cd5edea fix(docs): drop deprecated \u003ccode\u003ebaseUrl\u003c/code\u003e from tsconfig\u003c/li\u003e\n\u003cli\u003ec59d4474e3b4cad1b323462186cf607178ce8267 4.4.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.1\u003c/h2\u003e\n\u003ch2\u003eCommits:\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e481f7be4238c83ed58183f921b2646f340a91c6a ci: gate release publishing on full test workflow\u003c/li\u003e\n\u003cli\u003e95ccab423aec720b2523c3a64cdc7e3204537cc7 test(v3): restore optional undefined expectations\u003c/li\u003e\n\u003cli\u003ecede2c63739a5823d6aa5093d291e9a111da943d fix(v4): reject tuple holes before required defaults (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eedd0bf0f5ada4a8dc581c259407d7bbad0a71ea7 release: 4.4.1\u003c/li\u003e\n\u003cli\u003e180d83d1dbe6a59260710cc8637a3dea2281ee56 docs: remove Jazz featured sponsor\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.4.0\u003c/h2\u003e\n\u003ch2\u003e4.4.0\u003c/h2\u003e\n\u003cp\u003eThis is a minor release with a wide set of correctness and soundness fixes. Some fixes intentionally make Zod stricter, so code that depended on previously accepted invalid or ambiguous inputs may need small updates.\u003c/p\u003e\n\u003ch2\u003ePotentially breaking bug fixes\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/colinhacks/zod/commit/1fb56a5c18c27102dbc92260a4007c7732a0ccca\"\u003e\u003ccode\u003e1fb56a5\u003c/code\u003e\u003c/a\u003e docs: document release procedure in AGENTS.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/f3c9ec03ba7a28ae72d25cc295f38674bee0f559\"\u003e\u003ccode\u003ef3c9ec0\u003c/code\u003e\u003c/a\u003e 4.4.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/c2be4f819064eed62c7c350a2d399b5faecd15f8\"\u003e\u003ccode\u003ec2be4f8\u003c/code\u003e\u003c/a\u003e fix(v4): generalize optin/fallback to transform; restore preprocess on absent...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/1cab69383fcdeae2a366d5e2a2fc4d8fc765d168\"\u003e\u003ccode\u003e1cab693\u003c/code\u003e\u003c/a\u003e fix(v4): restore catch handling for absent object keys (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5937\"\u003e#5937\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/colinhacks/zod/issues/5939\"\u003e#5939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/b8dffe9e62f17e6571e6249d05cc5102b54d94e4\"\u003e\u003ccode\u003eb8dffe9\u003c/code\u003e\u003c/a\u003e docs: remove Numeric and Speakeasy (2+ missed monthly cycles)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/9195250cab0e7950efe39c3926d6c203b4b0a170\"\u003e\u003ccode\u003e9195250\u003c/code\u003e\u003c/a\u003e docs: remove Mintlify from bronze sponsors (churned)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/2c703322a21b4e2b12f33f49ea8430c451a68b4f\"\u003e\u003ccode\u003e2c70332\u003c/code\u003e\u003c/a\u003e docs: normalize bronze sponsor logos to github avatar pattern\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/7391be88ac1ee5cd02057f5ccc012a1f5df4efd0\"\u003e\u003ccode\u003e7391be8\u003c/code\u003e\u003c/a\u003e docs: prune lapsed silver/bronze sponsors and add active ones\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/2aeec83eb135e3a83756e973ef44845fc5a455d2\"\u003e\u003ccode\u003e2aeec83\u003c/code\u003e\u003c/a\u003e docs: prune lapsed gold sponsors and rebalance logo sizing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/colinhacks/zod/commit/4c2fa95ce3f3390fbc522324e406b4e9e89b88f9\"\u003e\u003ccode\u003e4c2fa95\u003c/code\u003e\u003c/a\u003e docs: use Zernio primary wordmark for gold sponsor logo\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/colinhacks/zod/compare/v4.3.6...v4.4.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 zod since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zustand` from 5.0.12 to 5.0.13\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.13\u003c/h2\u003e\n\u003cp\u003eThis release includes an improvement in the devtools middleware.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erefactor(devtools): remove duplicate module augmentation by \u003ca href=\"https://github.com/mahmoodhamdi\"\u003e\u003ccode\u003e@​mahmoodhamdi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3443\"\u003epmndrs/zustand#3443\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(devtools): support Firefox/Safari stack format in findCallerName by \u003ca href=\"https://github.com/SBolsec\"\u003e\u003ccode\u003e@​SBolsec\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3469\"\u003epmndrs/zustand#3469\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/mahmoodhamdi\"\u003e\u003ccode\u003e@​mahmoodhamdi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3443\"\u003epmndrs/zustand#3443\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/FelixEckl-vireq\"\u003e\u003ccode\u003e@​FelixEckl-vireq\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3466\"\u003epmndrs/zustand#3466\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/KimHyeongRae0\"\u003e\u003ccode\u003e@​KimHyeongRae0\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3471\"\u003epmndrs/zustand#3471\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lstak\"\u003e\u003ccode\u003e@​lstak\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3483\"\u003epmndrs/zustand#3483\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexRixten\"\u003e\u003ccode\u003e@​AlexRixten\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3474\"\u003epmndrs/zustand#3474\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SBolsec\"\u003e\u003ccode\u003e@​SBolsec\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pmndrs/zustand/pull/3469\"\u003epmndrs/zustand#3469\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.12...v5.0.13\"\u003ehttps://github.com/pmndrs/zustand/compare/v5.0.12...v5.0.13\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/6bc451efd5f0d4ef6e7b2c8d6fc6f8340562a31d\"\u003e\u003ccode\u003e6bc451e\u003c/code\u003e\u003c/a\u003e 5.0.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/8ec2169e85d53899a98007c9d2465d3f11ac1281\"\u003e\u003ccode\u003e8ec2169\u003c/code\u003e\u003c/a\u003e chore(deps): update dev dependencies (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3486\"\u003e#3486\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/4e9bcf0c82938cfe2463495a845806cd5ec3e59b\"\u003e\u003ccode\u003e4e9bcf0\u003c/code\u003e\u003c/a\u003e fix(devtools): support Firefox/Safari stack format in findCallerName (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3469\"\u003e#3469\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/4b96f4e3a53abdbb1419cacadddc9b1bd786dab3\"\u003e\u003ccode\u003e4b96f4e\u003c/code\u003e\u003c/a\u003e fix(docs): correct react-dom test utils import path (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3474\"\u003e#3474\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/c7516c1166c59435b07d66f6eda80a8619dd62b3\"\u003e\u003ccode\u003ec7516c1\u003c/code\u003e\u003c/a\u003e fix(tests): change parameters for 'expect' in test (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3483\"\u003e#3483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/1b04af1d970e4c326bf1d8c87cd55196fb177d32\"\u003e\u003ccode\u003e1b04af1\u003c/code\u003e\u003c/a\u003e docs(persist): fix signature to require persistOptions (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3477\"\u003e#3477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/95d3f338c463f499aaa7a8dd5448c8b13a7dec0b\"\u003e\u003ccode\u003e95d3f33\u003c/code\u003e\u003c/a\u003e test(middleware/immer): add runtime tests for immer middleware (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3471\"\u003e#3471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/32013285083648e8d58ba1f76d73b9bdc02fef50\"\u003e\u003ccode\u003e3201328\u003c/code\u003e\u003c/a\u003e Update TypeScript guide links in README.md (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3466\"\u003e#3466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/00f96a389d4015ecf4eadb42aa1e4e0efe14bb95\"\u003e\u003ccode\u003e00f96a3\u003c/code\u003e\u003c/a\u003e chore(deps): bump actions/deploy-pages from 4.0.5 to 5.0.0 (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3447\"\u003e#3447\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pmndrs/zustand/commit/63300440c67b41e7db2b81538b5aa5d72693afc9\"\u003e\u003ccode\u003e6330044\u003c/code\u003e\u003c/a\u003e test: expand React subscribe test coverage (\u003ca href=\"https://redirect.github.com/pmndrs/zustand/issues/3442\"\u003e#3442\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pmndrs/zustand/compare/v5.0.12...v5.0.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@ast-grep/napi-linux-x64-gnu` from 0.42.1 to 0.42.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ast-grep/ast-grep/releases\"\u003e@​ast-grep/napi-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.42.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.52.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2620\"\u003e\u003ccode\u003e[#2620](https://github.com/ast-grep/ast-grep/issues/2620)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2623\"\u003e\u003ccode\u003e[#2623](https://github.com/ast-grep/ast-grep/issues/2623)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.4 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2627\"\u003e\u003ccode\u003e[#2627](https://github.com/ast-grep/ast-grep/issues/2627)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v24.12.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2624\"\u003e\u003ccode\u003e[#2624](https://github.com/ast-grep/ast-grep/issues/2624)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-swift to v0.7.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2619\"\u003e\u003ccode\u003e[#2619](https://github.com/ast-grep/ast-grep/issues/2619)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.63.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2621\"\u003e\u003ccode\u003e[#2621](https://github.com/ast-grep/ast-grep/issues/2621)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: replace postinstall script with binary resolution in ast-grep \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2595\"\u003e\u003ccode\u003e[#2595](https://github.com/ast-grep/ast-grep/issues/2595)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lsp): use cwd instead of config dir as workspace fallback \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2600\"\u003e\u003ccode\u003e[#2600](https://github.com/ast-grep/ast-grep/issues/2600)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2613\"\u003e\u003ccode\u003e[#2613](https://github.com/ast-grep/ast-grep/issues/2613)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi-derive to v3.5.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2615\"\u003e\u003ccode\u003e[#2615](https://github.com/ast-grep/ast-grep/issues/2615)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi to v3.8.6 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2614\"\u003e\u003ccode\u003e[#2614](https://github.com/ast-grep/ast-grep/issues/2614)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2610\"\u003e\u003ccode\u003e[#2610](https://github.com/ast-grep/ast-grep/issues/2610)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.62.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2611\"\u003e\u003ccode\u003e[#2611](https://github.com/ast-grep/ast-grep/issues/2611)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update astral-sh/setup-uv action to v8 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2604\"\u003e\u003ccode\u003e[#2604](https://github.com/ast-grep/ast-grep/issues/2604)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-c to v0.24.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2608\"\u003e\u003ccode\u003e[#2608](https://github.com/ast-grep/ast-grep/issues/2608)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust crate tree-sitter-dart to 0.2.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2609\"\u003e\u003ccode\u003e[#2609](https://github.com/ast-grep/ast-grep/issues/2609)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update robinraju/release-downloader action to v1.13 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2606\"\u003e\u003ccode\u003e[#2606](https://github.com/ast-grep/ast-grep/issues/2606)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lsp): report unused suppressions without rules \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2607\"\u003e\u003ccode\u003e[#2607](https://github.com/ast-grep/ast-grep/issues/2607)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2589\"\u003e\u003ccode\u003e[#2589](https://github.com/ast-grep/ast-grep/issues/2589)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.61.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2605\"\u003e\u003ccode\u003e[#2605](https://github.com/ast-grep/ast-grep/issues/2605)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate similar to v3.1.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2587\"\u003e\u003ccode\u003e[#2587](https://github.com/ast-grep/ast-grep/issues/2587)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust crate tree-sitter-scala to 0.26.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2602\"\u003e\u003ccode\u003e[#2602](https://github.com/ast-grep/ast-grep/issues/2602)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-scala to v0.25.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2601\"\u003e\u003ccode\u003e[#2601](https://github.com/ast-grep/ast-grep/issues/2601)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-c-sharp to v0.23.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2591\"\u003e\u003ccode\u003e[#2591](https://github.com/ast-grep/ast-grep/issues/2591)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.60.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2588\"\u003e\u003ccode\u003e[#2588](https://github.com/ast-grep/ast-grep/issues/2588)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate assert_cmd to v2.2.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2599\"\u003e\u003ccode\u003e[#2599](https://github.com/ast-grep/ast-grep/issues/2599)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency typescript to v6.0.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2598\"\u003e\u003ccode\u003e[#2598](https://github.com/ast-grep/ast-grep/issues/2598)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​napi-rs/cli\u003c/code\u003e to v3.6.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2593\"\u003e\u003ccode\u003e[#2593](https://github.com/ast-grep/ast-grep/issues/2593)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi-derive to v3.5.4 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2597\"\u003e\u003ccode\u003e[#2597](https://github.com/ast-grep/ast-grep/issues/2597)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi to v3.8.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2596\"\u003e\u003ccode\u003e[#2596](https://github.com/ast-grep/ast-grep/issues/2596)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.52.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2592\"\u003e\u003ccode\u003e[#2592](https://github.com/ast-grep/ast-grep/issues/2592)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap to v4.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2594\"\u003e\u003ccode\u003e[#2594](https://github.com/ast-grep/ast-grep/issues/2594)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update pyo3/maturin-action action to v1.51.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2510\"\u003e\u003ccode\u003e[#2510](https://github.com/ast-grep/ast-grep/issues/2510)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2568\"\u003e\u003ccode\u003e[#2568](https://github.com/ast-grep/ast-grep/issues/2568)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​napi-rs/cli\u003c/code\u003e to v3.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2583\"\u003e\u003ccode\u003e[#2583](https://github.com/ast-grep/ast-grep/issues/2583)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​ast-grep/napi\u003c/code\u003e to v0.42.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2580\"\u003e\u003ccode\u003e[#2580](https://github.com/ast-grep/ast-grep/issues/2580)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.59.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2581\"\u003e\u003ccode\u003e[#2581](https://github.com/ast-grep/ast-grep/issues/2581)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate toml_edit to v0.25.11 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2582\"\u003e\u003ccode\u003e[#2582](https://github.com/ast-grep/ast-grep/issues/2582)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.51.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2584\"\u003e\u003ccode\u003e[#2584](https://github.com/ast-grep/ast-grep/issues/2584)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency dprint to v0.54.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2585\"\u003e\u003ccode\u003e[#2585](https://github.com/ast-grep/ast-grep/issues/2585)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2586\"\u003e\u003ccode\u003e[#2586](https://github.com/ast-grep/ast-grep/issues/2586)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v24.12.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2579\"\u003e\u003ccode\u003e[#2579](https://github.com/ast-grep/ast-grep/issues/2579)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: enable npx install fallback but still keep postinstall \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/fbc5b9b67d7f7f4e86406a7fcf491cbfab327098\"\u003e\u003ccode\u003efbc5b9b\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump kotlin version \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/6f09a5b02dc95ab083b614b4d972059b9afe3a23\"\u003e\u003ccode\u003e6f09a5b\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: solve linting \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/945328aa3157370ce8fcc207358e29490d257fb6\"\u003e\u003ccode\u003e945328a\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/ast-grep/ast-grep/blob/main/CHANGELOG.md\"\u003e@​ast-grep/napi-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch4\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/compare/0.42.1...0.42.2\"\u003e0.42.2\u003c/a\u003e\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.52.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2620\"\u003e\u003ccode\u003e[#2620](https://github.com/ast-grep/ast-grep/issues/2620)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2623\"\u003e\u003ccode\u003e[#2623](https://github.com/ast-grep/ast-grep/issues/2623)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.4 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2627\"\u003e\u003ccode\u003e[#2627](https://github.com/ast-grep/ast-grep/issues/2627)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v24.12.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2624\"\u003e\u003ccode\u003e[#2624](https://github.com/ast-grep/ast-grep/issues/2624)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-swift to v0.7.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2619\"\u003e\u003ccode\u003e[#2619](https://github.com/ast-grep/ast-grep/issues/2619)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.63.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2621\"\u003e\u003ccode\u003e[#2621](https://github.com/ast-grep/ast-grep/issues/2621)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: replace postinstall script with binary resolution in ast-grep \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2595\"\u003e\u003ccode\u003e[#2595](https://github.com/ast-grep/ast-grep/issues/2595)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lsp): use cwd instead of config dir as workspace fallback \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2600\"\u003e\u003ccode\u003e[#2600](https://github.com/ast-grep/ast-grep/issues/2600)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2613\"\u003e\u003ccode\u003e[#2613](https://github.com/ast-grep/ast-grep/issues/2613)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi-derive to v3.5.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2615\"\u003e\u003ccode\u003e[#2615](https://github.com/ast-grep/ast-grep/issues/2615)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi to v3.8.6 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2614\"\u003e\u003ccode\u003e[#2614](https://github.com/ast-grep/ast-grep/issues/2614)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2610\"\u003e\u003ccode\u003e[#2610](https://github.com/ast-grep/ast-grep/issues/2610)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.62.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2611\"\u003e\u003ccode\u003e[#2611](https://github.com/ast-grep/ast-grep/issues/2611)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update astral-sh/setup-uv action to v8 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2604\"\u003e\u003ccode\u003e[#2604](https://github.com/ast-grep/ast-grep/issues/2604)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-c to v0.24.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2608\"\u003e\u003ccode\u003e[#2608](https://github.com/ast-grep/ast-grep/issues/2608)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust crate tree-sitter-dart to 0.2.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2609\"\u003e\u003ccode\u003e[#2609](https://github.com/ast-grep/ast-grep/issues/2609)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update robinraju/release-downloader action to v1.13 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2606\"\u003e\u003ccode\u003e[#2606](https://github.com/ast-grep/ast-grep/issues/2606)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(lsp): report unused suppressions without rules \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2607\"\u003e\u003ccode\u003e[#2607](https://github.com/ast-grep/ast-grep/issues/2607)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2589\"\u003e\u003ccode\u003e[#2589](https://github.com/ast-grep/ast-grep/issues/2589)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.61.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2605\"\u003e\u003ccode\u003e[#2605](https://github.com/ast-grep/ast-grep/issues/2605)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate similar to v3.1.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2587\"\u003e\u003ccode\u003e[#2587](https://github.com/ast-grep/ast-grep/issues/2587)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust crate tree-sitter-scala to 0.26.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2602\"\u003e\u003ccode\u003e[#2602](https://github.com/ast-grep/ast-grep/issues/2602)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-scala to v0.25.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2601\"\u003e\u003ccode\u003e[#2601](https://github.com/ast-grep/ast-grep/issues/2601)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tree-sitter-c-sharp to v0.23.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2591\"\u003e\u003ccode\u003e[#2591](https://github.com/ast-grep/ast-grep/issues/2591)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.60.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2588\"\u003e\u003ccode\u003e[#2588](https://github.com/ast-grep/ast-grep/issues/2588)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate assert_cmd to v2.2.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2599\"\u003e\u003ccode\u003e[#2599](https://github.com/ast-grep/ast-grep/issues/2599)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency typescript to v6.0.3 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2598\"\u003e\u003ccode\u003e[#2598](https://github.com/ast-grep/ast-grep/issues/2598)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​napi-rs/cli\u003c/code\u003e to v3.6.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2593\"\u003e\u003ccode\u003e[#2593](https://github.com/ast-grep/ast-grep/issues/2593)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi-derive to v3.5.4 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2597\"\u003e\u003ccode\u003e[#2597](https://github.com/ast-grep/ast-grep/issues/2597)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate napi to v3.8.5 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2596\"\u003e\u003ccode\u003e[#2596](https://github.com/ast-grep/ast-grep/issues/2596)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.52.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2592\"\u003e\u003ccode\u003e[#2592](https://github.com/ast-grep/ast-grep/issues/2592)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap to v4.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2594\"\u003e\u003ccode\u003e[#2594](https://github.com/ast-grep/ast-grep/issues/2594)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update pyo3/maturin-action action to v1.51.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2510\"\u003e\u003ccode\u003e[#2510](https://github.com/ast-grep/ast-grep/issues/2510)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(deps): update rust-wasm-bindgen monorepo \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2568\"\u003e\u003ccode\u003e[#2568](https://github.com/ast-grep/ast-grep/issues/2568)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​napi-rs/cli\u003c/code\u003e to v3.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2583\"\u003e\u003ccode\u003e[#2583](https://github.com/ast-grep/ast-grep/issues/2583)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​ast-grep/napi\u003c/code\u003e to v0.42.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2580\"\u003e\u003ccode\u003e[#2580](https://github.com/ast-grep/ast-grep/issues/2580)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency oxlint to v1.59.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2581\"\u003e\u003ccode\u003e[#2581](https://github.com/ast-grep/ast-grep/issues/2581)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate toml_edit to v0.25.11 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2582\"\u003e\u003ccode\u003e[#2582](https://github.com/ast-grep/ast-grep/issues/2582)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate tokio to v1.51.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2584\"\u003e\u003ccode\u003e[#2584](https://github.com/ast-grep/ast-grep/issues/2584)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency dprint to v0.54.0 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2585\"\u003e\u003ccode\u003e[#2585](https://github.com/ast-grep/ast-grep/issues/2585)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update rust crate clap_complete to v4.6.1 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2586\"\u003e\u003ccode\u003e[#2586](https://github.com/ast-grep/ast-grep/issues/2586)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v24.12.2 \u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/pull/2579\"\u003e\u003ccode\u003e[#2579](https://github.com/ast-grep/ast-grep/issues/2579)\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: enable npx install fallback but still keep postinstall \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/fbc5b9b67d7f7f4e86406a7fcf491cbfab327098\"\u003e\u003ccode\u003efbc5b9b\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump kotlin version \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/6f09a5b02dc95ab083b614b4d972059b9afe3a23\"\u003e\u003ccode\u003e6f09a5b\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: solve linting \u003ca href=\"https://github.com/ast-grep/ast-grep/commit/945328aa3157370ce8fcc207358e29490d257fb6\"\u003e\u003ccode\u003e945328a\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/ast-grep/ast-grep/commit/25e6a90e1403af9e1d90574d1c704300fede18b5\"\u003e\u003ccode\u003e25e6a90\u003c/code\u003e\u003c/a\u003e 0.42.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/bbfad0e4a66169fe3b2294ca3976b970d2513e83\"\u003e\u003ccode\u003ebbfad0e\u003c/code\u003e\u003c/a\u003e chore(deps): update rust crate tokio to v1.52.3 (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2620\"\u003e#2620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/4ab320d3e8807ffe17a3c438e1b9c3e2c2b4fbaa\"\u003e\u003ccode\u003e4ab320d\u003c/code\u003e\u003c/a\u003e fix(deps): update rust-wasm-bindgen monorepo (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2623\"\u003e#2623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/fbc5b9b67d7f7f4e86406a7fcf491cbfab327098\"\u003e\u003ccode\u003efbc5b9b\u003c/code\u003e\u003c/a\u003e fix: enable npx install fallback but still keep postinstall\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/915d00a04ef543f988f07b63bcffbf34d6d64595\"\u003e\u003ccode\u003e915d00a\u003c/code\u003e\u003c/a\u003e chore(deps): update rust crate clap_complete to v4.6.4 (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2627\"\u003e#2627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/de07fef489051da5b0fe0c07f7abdd3a14a162f3\"\u003e\u003ccode\u003ede07fef\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency \u003ccode\u003e@​types/node\u003c/code\u003e to v24.12.3 (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2624\"\u003e#2624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/6f09a5b02dc95ab083b614b4d972059b9afe3a23\"\u003e\u003ccode\u003e6f09a5b\u003c/code\u003e\u003c/a\u003e chore: bump kotlin version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/bab1336e48db1afd1a9d9d831480498a5701c3b9\"\u003e\u003ccode\u003ebab1336\u003c/code\u003e\u003c/a\u003e chore(deps): update rust crate tree-sitter-swift to v0.7.2 (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2619\"\u003e#2619\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/4c35a206e2fdd725263fd742bdd9ee439256c42d\"\u003e\u003ccode\u003e4c35a20\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency oxlint to v1.63.0 (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2621\"\u003e#2621\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ast-grep/ast-grep/commit/333e1951554969524f57b248e30d6fb65ddd53c5\"\u003e\u003ccode\u003e333e195\u003c/code\u003e\u003c/a\u003e fix: replace postinstall script with binary resolution in ast-grep (\u003ca href=\"https://redirect.github.com/ast-grep/ast-grep/issues/2595\"\u003e#2595\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ast-grep/ast-grep/compare/0.42.1...0.42.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.4 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/oxide-linux-x64-gnu'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu'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/1998...\n\n_Description has been truncated_","html_url":"https://github.com/JSB2010/jacobbarkin.com/pull/170","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/JSB2010%2Fjacobbarkin.com/issues/170","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/170/packages"}},{"old_version":"4.2.4","new_version":"4.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-11T02:39:33.000Z","version_change":"4.2.4 → 4.3.0","issue":{"uuid":"4417694078","node_id":"PR_kwDOSK1JWc7aFrSQ","number":91,"state":"open","title":"chore(deps): bump the frontend-minor-patch group with 21 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-11T02:39:33.000Z","updated_at":"2026-05-11T02:40:30.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"frontend-minor-patch","update_count":21,"packages":[{"name":"@tailwindcss/vite","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"tailwind-merge","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/dcastil/tailwind-merge"},{"name":"tailwindcss","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/node","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-android-arm64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-arm64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-x64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-freebsd-x64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm-gnueabihf","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-musl","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-musl","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-wasm32-wasi","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-arm64-msvc","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-x64-msvc","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"baseline-browser-mapping","old_version":"2.10.27","new_version":"2.10.29","repository_url":"https://github.com/web-platform-dx/baseline-browser-mapping"},{"name":"electron-to-chromium","old_version":"1.5.352","new_version":"1.5.353","repository_url":"https://github.com/Kilian/electron-to-chromium"},{"name":"enhanced-resolve","old_version":"5.21.1","new_version":"5.21.2","repository_url":"https://github.com/webpack/enhanced-resolve"},{"name":"get-east-asian-width","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/sindresorhus/get-east-asian-width"}],"path":null,"ecosystem":"npm"},"body":"Bumps the frontend-minor-patch group with 21 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.4` | `4.3.0` |\n| [tailwind-merge](https://github.com/dcastil/tailwind-merge) | `3.5.0` | `3.6.0` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/node](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-android-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/android-arm64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-darwin-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-arm64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-darwin-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-x64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-freebsd-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/freebsd-x64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm-gnueabihf](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm-gnueabihf) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-gnu) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-musl) | `4.2.4` | `4.3.0` |\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| [@tailwindcss/oxide-linux-x64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-musl) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-wasm32-wasi](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-win32-arm64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-arm64-msvc) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-win32-x64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-x64-msvc) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.4` | `4.3.0` |\n| [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) | `2.10.27` | `2.10.29` |\n| [electron-to-chromium](https://github.com/Kilian/electron-to-chromium) | `1.5.352` | `1.5.353` |\n| [enhanced-resolve](https://github.com/webpack/enhanced-resolve) | `5.21.1` | `5.21.2` |\n| [get-east-asian-width](https://github.com/sindresorhus/get-east-asian-width) | `1.5.0` | `1.6.0` |\n\nUpdates `@tailwindcss/vite` from 4.2.4 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\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/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\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/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\u003eSee full diff 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\u003cbr /\u003e\n\nUpdates `tailwind-merge` from 3.5.0 to 3.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dcastil/tailwind-merge/releases\"\u003etailwind-merge's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.6.0\u003c/h2\u003e\n\u003ch3\u003eNew Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Tailwind CSS v4.3 by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/677\"\u003edcastil/tailwind-merge#677\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003epostfixLookupClassGroups\u003c/code\u003e option to config to support Tailwind utilities where a slash is part of the full class name, like named container queries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdd support for readonly array values by \u003ca href=\"https://github.com/unional\"\u003e\u003ccode\u003e@​unional\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/652\"\u003edcastil/tailwind-merge#652\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in README by \u003ca href=\"https://github.com/maurer2\"\u003e\u003ccode\u003e@​maurer2\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/pull/662\"\u003edcastil/tailwind-merge#662\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHarden internal CI pipeline security by omitting git checkout by \u003ca href=\"https://github.com/dcastil\"\u003e\u003ccode\u003e@​dcastil\u003c/code\u003e\u003c/a\u003e, suggested by \u003ca href=\"https://github.com/kyletaylored\"\u003e\u003ccode\u003e@​kyletaylored\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\"\u003ehttps://github.com/dcastil/tailwind-merge/commit/6b2499c10cf52bed42426d30b4219e90374b30d6\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ehttps://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/brandonmcconnell\"\u003e\u003ccode\u003e@​brandonmcconnell\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/manavm1990\"\u003e\u003ccode\u003e@​manavm1990\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/langy\"\u003e\u003ccode\u003e@​langy\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roboflow\"\u003e\u003ccode\u003e@​roboflow\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/syntaxfm\"\u003e\u003ccode\u003e@​syntaxfm\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/getsentry\"\u003e\u003ccode\u003e@​getsentry\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/codecov\"\u003e\u003ccode\u003e@​codecov\u003c/code\u003e\u003c/a\u003e, a private sponsor, \u003ca href=\"https://github.com/block\"\u003e\u003ccode\u003e@​block\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/openclaw\"\u003e\u003ccode\u003e@​openclaw\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sourcegraph\"\u003e\u003ccode\u003e@​sourcegraph\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mike-healy\"\u003e\u003ccode\u003e@​mike-healy\u003c/code\u003e\u003c/a\u003e and more via \u003ca href=\"https://github.com/thnxdev\"\u003e\u003ccode\u003e@​thnxdev\u003c/code\u003e\u003c/a\u003e for sponsoring tailwind-merge! ❤️\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/dcastil/tailwind-merge/commit/d54f7e5713c653d0171971405344f7c6e44d418f\"\u003e\u003ccode\u003ed54f7e5\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/638871a67a0a124ac9275eda77cd08b03f2f045e\"\u003e\u003ccode\u003e638871a\u003c/code\u003e\u003c/a\u003e Update README to add info about Tailwind CSS v4.3 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/39fc7b5e915493e5eb3ddb1ca615f5b2eeff2540\"\u003e\u003ccode\u003e39fc7b5\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;v3.6.0\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/bd8390f6ca387f93c9e989fb3fb09924fb843445\"\u003e\u003ccode\u003ebd8390f\u003c/code\u003e\u003c/a\u003e v3.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/802877c6e31f9fb64c627e5e760729a16cd0a69b\"\u003e\u003ccode\u003e802877c\u003c/code\u003e\u003c/a\u003e add v3.6.0 changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/a35fedac7d1fc8756223da94290a83a32068d2ae\"\u003e\u003ccode\u003ea35feda\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/665\"\u003e#665\u003c/a\u003e from dcastil/renovate/rollup-plugin-babel-7.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/940389cf89ed0da277ff5c01b98fd619687926e9\"\u003e\u003ccode\u003e940389c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/667\"\u003e#667\u003c/a\u003e from dcastil/renovate/release-drafter-release-drafter...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/005af6df08cfbe2adac7ca6cb5a7be02b9261fbd\"\u003e\u003ccode\u003e005af6d\u003c/code\u003e\u003c/a\u003e pin to specific version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/5816ced627ebcaefd497ad8e4202baf750dd545c\"\u003e\u003ccode\u003e5816ced\u003c/code\u003e\u003c/a\u003e implement breaking changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcastil/tailwind-merge/commit/17041e17c5b9c96fcb0f4758c718799cb3af14a6\"\u003e\u003ccode\u003e17041e1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/dcastil/tailwind-merge/issues/676\"\u003e#676\u003c/a\u003e from dcastil/dependabot/npm_and_yarn/babel/plugin-tra...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dcastil/tailwind-merge/compare/v3.5.0...v3.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwindcss` from 4.2.4 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\"\u003etailwindcss'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss'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\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/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/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/59936c6cbb69eae114bc52d0a3c9315b18c70a94\"\u003e\u003ccode\u003e59936c6\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/90a2373620200bf7e04d1d228a0d0a1c506e532a\"\u003e\u003ccode\u003e90a2373\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e1ccf7f115732032d2b079073dcb0009baf82a0\"\u003e\u003ccode\u003e2e1ccf7\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/754e7512ca51db1f922dc67724cf85a0fde923a9\"\u003e\u003ccode\u003e754e751\u003c/code\u003e\u003c/a\u003e Use non-existing example in tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20021\"\u003e#20021\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/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/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/8c779899bbc94f9f642db47cafdd363dd094984a\"\u003e\u003ccode\u003e8c77989\u003c/code\u003e\u003c/a\u003e Ensure math operators are surrounded by whitespace in arbitrary values (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/b4db3b99d1bc6209a936df34914e0fc34b3e5095\"\u003e\u003ccode\u003eb4db3b9\u003c/code\u003e\u003c/a\u003e Add scrollbar-width and scrollbar-color utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19981\"\u003e#19981\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/08cad84bbe2002398655d7f981eae47379e07fc3\"\u003e\u003ccode\u003e08cad84\u003c/code\u003e\u003c/a\u003e Support \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e to support fallbac...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/tailwindcss\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/node` from 4.2.4 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/node'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/node'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\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/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-node/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-node/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4b5d6a594305b2914a018d52392e099468922430\"\u003e\u003ccode\u003e4b5d6a5\u003c/code\u003e\u003c/a\u003e Update enhanced-resolve 5.20.1 → 5.21.0 (minor) (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node/issues/19998\"\u003e#19998\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-node/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-android-arm64` from 4.2.4 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/oxide-android-arm64'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-android-arm64'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\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/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/crates/node/npm/android-arm64/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/crates/node/npm/android-arm64\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-darwin-arm64` from 4.2.4 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/oxide-darwin-arm64'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-darwin-arm64'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\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/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/cr...\n\n_Description has been truncated_\n\n\u003c!-- This is an auto-generated comment: release notes by coderabbit.ai --\u003e\n\n## Summary by CodeRabbit\n\n* **Chores**\n  * Updated Tailwind CSS and related tooling packages to latest versions for improved compatibility and performance.\n\n[![Review Change Stack](https://storage.googleapis.com/coderabbit_public_assets/review-stack-in-coderabbit-ui.svg)](https://app.coderabbit.ai/change-stack/trade/mark/pull/91)\n\n\u003c!-- end of auto-generated comment: release notes by coderabbit.ai --\u003e","html_url":"https://github.com/trade/mark/pull/91","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/trade%2Fmark/issues/91","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/91/packages"}},{"old_version":"4.2.4","new_version":"4.3.0","update_type":"minor","path":null,"pr_created_at":"2026-05-10T23:32:43.000Z","version_change":"4.2.4 → 4.3.0","issue":{"uuid":"4417146637","node_id":"PR_kwDOMzbQP87aEBDh","number":422,"state":"closed","title":"Bump the packages group with 39 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":["poad"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-10T23:32:54.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-10T23:32:43.000Z","updated_at":"2026-05-10T23:32:56.000Z","time_to_close":11,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"packages","update_count":39,"packages":[{"name":"@vercel/functions","old_version":"3.5.0","new_version":"3.5.1","repository_url":"https://github.com/vercel/vercel"},{"name":"@eslint/compat","old_version":"2.0.5","new_version":"2.1.0","repository_url":"https://github.com/eslint/rewrite"},{"name":"@tailwindcss/postcss","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":"vercel","old_version":"53.2.0","new_version":"53.3.2","repository_url":"https://github.com/vercel/vercel"},{"name":"@tailwindcss/node","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-android-arm64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-arm64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-x64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-freebsd-x64","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm-gnueabihf","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-musl","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-musl","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-wasm32-wasi","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-arm64-msvc","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-x64-msvc","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide","old_version":"4.2.4","new_version":"4.3.0","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@vercel/backends","old_version":"0.3.0","new_version":"0.4.1","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/build-utils","old_version":"13.21.0","new_version":"13.22.0","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/cervel","old_version":"0.1.0","new_version":"0.1.2","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/elysia","old_version":"0.1.73","new_version":"0.1.75","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/express","old_version":"0.1.83","new_version":"0.1.85","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/fastify","old_version":"0.1.76","new_version":"0.1.78","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/gatsby-plugin-vercel-builder","old_version":"2.2.0","new_version":"2.2.2","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/h3","old_version":"0.1.82","new_version":"0.1.84","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/hono","old_version":"0.2.76","new_version":"0.2.78","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/koa","old_version":"0.1.56","new_version":"0.1.58","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/nestjs","old_version":"0.2.77","new_version":"0.2.79","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/node","old_version":"5.7.15","new_version":"5.7.17","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/python","old_version":"6.38.0","new_version":"6.39.0","repository_url":"https://github.com/vercel/vercel"},{"name":"@vercel/static-build","old_version":"2.9.22","new_version":"2.9.24","repository_url":"https://github.com/vercel/vercel"},{"name":"baseline-browser-mapping","old_version":"2.10.27","new_version":"2.10.29","repository_url":"https://github.com/web-platform-dx/baseline-browser-mapping"},{"name":"electron-to-chromium","old_version":"1.5.352","new_version":"1.5.353","repository_url":"https://github.com/Kilian/electron-to-chromium"},{"name":"enhanced-resolve","old_version":"5.21.0","new_version":"5.21.2","repository_url":"https://github.com/webpack/enhanced-resolve"},{"name":"nf3","old_version":"0.3.16","new_version":"0.3.17","repository_url":"https://github.com/unjs/nf3"},{"name":"socks","old_version":"2.8.8","new_version":"2.8.9","repository_url":"https://github.com/JoshGlazebrook/socks"},{"name":"tar","old_version":"7.5.14","new_version":"7.5.15","repository_url":"https://github.com/isaacs/node-tar"}],"path":null,"ecosystem":"npm"},"body":"Bumps the packages group with 39 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@vercel/functions](https://github.com/vercel/vercel/tree/HEAD/packages/functions) | `3.5.0` | `3.5.1` |\n| [@eslint/compat](https://github.com/eslint/rewrite/tree/HEAD/packages/compat) | `2.0.5` | `2.1.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.4` | `4.3.0` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.4` | `4.3.0` |\n| [vercel](https://github.com/vercel/vercel/tree/HEAD/packages/cli) | `53.2.0` | `53.3.2` |\n| [@tailwindcss/node](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-android-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/android-arm64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-darwin-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-arm64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-darwin-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-x64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-freebsd-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/freebsd-x64) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm-gnueabihf](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm-gnueabihf) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-gnu) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-linux-arm64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-musl) | `4.2.4` | `4.3.0` |\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| [@tailwindcss/oxide-linux-x64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-musl) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-wasm32-wasi](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-win32-arm64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-arm64-msvc) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide-win32-x64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-x64-msvc) | `4.2.4` | `4.3.0` |\n| [@tailwindcss/oxide](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.4` | `4.3.0` |\n| [@vercel/backends](https://github.com/vercel/vercel/tree/HEAD/packages/backends) | `0.3.0` | `0.4.1` |\n| [@vercel/build-utils](https://github.com/vercel/vercel/tree/HEAD/packages/now-build-utils) | `13.21.0` | `13.22.0` |\n| [@vercel/cervel](https://github.com/vercel/vercel/tree/HEAD/packages/cervel) | `0.1.0` | `0.1.2` |\n| [@vercel/elysia](https://github.com/vercel/vercel/tree/HEAD/packages/elysia) | `0.1.73` | `0.1.75` |\n| [@vercel/express](https://github.com/vercel/vercel/tree/HEAD/packages/express) | `0.1.83` | `0.1.85` |\n| [@vercel/fastify](https://github.com/vercel/vercel/tree/HEAD/packages/fastify) | `0.1.76` | `0.1.78` |\n| [@vercel/gatsby-plugin-vercel-builder](https://github.com/vercel/vercel/tree/HEAD/packages/gatsby-plugin-vercel-builder) | `2.2.0` | `2.2.2` |\n| [@vercel/h3](https://github.com/vercel/vercel/tree/HEAD/packages/h3) | `0.1.82` | `0.1.84` |\n| [@vercel/hono](https://github.com/vercel/vercel/tree/HEAD/packages/hono) | `0.2.76` | `0.2.78` |\n| [@vercel/koa](https://github.com/vercel/vercel/tree/HEAD/packages/koa) | `0.1.56` | `0.1.58` |\n| [@vercel/nestjs](https://github.com/vercel/vercel/tree/HEAD/packages/nestjs) | `0.2.77` | `0.2.79` |\n| [@vercel/node](https://github.com/vercel/vercel/tree/HEAD/packages/node) | `5.7.15` | `5.7.17` |\n| [@vercel/python](https://github.com/vercel/vercel/tree/HEAD/packages/python) | `6.38.0` | `6.39.0` |\n| [@vercel/static-build](https://github.com/vercel/vercel/tree/HEAD/packages/static-build) | `2.9.22` | `2.9.24` |\n| [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) | `2.10.27` | `2.10.29` |\n| [electron-to-chromium](https://github.com/Kilian/electron-to-chromium) | `1.5.352` | `1.5.353` |\n| [enhanced-resolve](https://github.com/webpack/enhanced-resolve) | `5.21.0` | `5.21.2` |\n| [nf3](https://github.com/unjs/nf3) | `0.3.16` | `0.3.17` |\n| [socks](https://github.com/JoshGlazebrook/socks) | `2.8.8` | `2.8.9` |\n| [tar](https://github.com/isaacs/node-tar) | `7.5.14` | `7.5.15` |\n\nUpdates `@vercel/functions` from 3.5.0 to 3.5.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/vercel/releases\"\u003e@​vercel/functions's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​vercel/functions\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.5.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eae20217: Upgrade to TypeScript 5.9\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [ae20217]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/oidc\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.1\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/vercel/vercel/blob/main/packages/functions/CHANGELOG.md\"\u003e@​vercel/functions's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.5.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eae20217: Upgrade to TypeScript 5.9\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [ae20217]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/oidc\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.4.1\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/vercel/commit/8a127cee8a0ae16f4cbe0c4b596cdffe089bdd84\"\u003e\u003ccode\u003e8a127ce\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/functions/issues/16235\"\u003e#16235\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/ae202176b0e66900387bbab0d167a1dfad401449\"\u003e\u003ccode\u003eae20217\u003c/code\u003e\u003c/a\u003e Upgrade a few straddlers to TypeScript 5.9 (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/functions/issues/16253\"\u003e#16253\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vercel/vercel/commits/@vercel/functions@3.5.1/packages/functions\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@eslint/compat` from 2.0.5 to 2.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/eslint/rewrite/releases\"\u003e@​eslint/compat's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecompat: v2.1.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/compat-v2.0.5...compat-v2.1.0\"\u003e2.1.0\u003c/a\u003e (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to config-helpers (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/430\"\u003e#430\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/9b513529022834e72cccfa278ec7ba6e7f4e10c5\"\u003e9b51352\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emigrate-config: v2.1.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/migrate-config-v2.0.7...migrate-config-v2.1.0\"\u003e2.1.0\u003c/a\u003e (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to config-helpers (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/430\"\u003e#430\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/9b513529022834e72cccfa278ec7ba6e7f4e10c5\"\u003e9b51352\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe following workspace dependencies were updated\n\u003cul\u003e\n\u003cli\u003edependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/config-helpers\u003c/code\u003e bumped from ^0.5.5 to ^0.6.0\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\u003emigrate-config: v2.0.7\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/migrate-config-v2.0.6...migrate-config-v2.0.7\"\u003e2.0.7\u003c/a\u003e (2026-05-01)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate \u003ccode\u003eespree\u003c/code\u003e to the latest (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/437\"\u003e#437\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/a8ff72f6f473ce87df4156d3eb9b6e4992084337\"\u003ea8ff72f\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emigrate-config: v2.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/migrate-config-v2.0.5...migrate-config-v2.0.6\"\u003e2.0.6\u003c/a\u003e (2026-04-08)\u003c/h2\u003e\n\u003ch3\u003eDependencies\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eThe following workspace dependencies were updated\n\u003cul\u003e\n\u003cli\u003edependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/compat\u003c/code\u003e bumped from ^2.0.4 to ^2.0.5\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003edevDependencies\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​eslint/core\u003c/code\u003e bumped from ^1.2.0 to ^1.2.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/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/eslint/rewrite/blob/main/packages/compat/CHANGELOG.md\"\u003e@​eslint/compat's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/eslint/rewrite/compare/compat-v2.0.5...compat-v2.1.0\"\u003e2.1.0\u003c/a\u003e (2026-05-08)\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to config-helpers (\u003ca href=\"https://redirect.github.com/eslint/rewrite/issues/430\"\u003e#430\u003c/a\u003e) (\u003ca href=\"https://github.com/eslint/rewrite/commit/9b513529022834e72cccfa278ec7ba6e7f4e10c5\"\u003e9b51352\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/eslint/rewrite/commit/b8949534bf7f498d941007f3adc2740157965b49\"\u003e\u003ccode\u003eb894953\u003c/code\u003e\u003c/a\u003e chore: release main (\u003ca href=\"https://github.com/eslint/rewrite/tree/HEAD/packages/compat/issues/446\"\u003e#446\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/334038d4f068e947bc366e7f987423414ad2773a\"\u003e\u003ccode\u003e334038d\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/9b513529022834e72cccfa278ec7ba6e7f4e10c5\"\u003e\u003ccode\u003e9b51352\u003c/code\u003e\u003c/a\u003e feat: Add new \u003ccode\u003eincludeIgnoreFile()\u003c/code\u003e to config-helpers (\u003ca href=\"https://github.com/eslint/rewrite/tree/HEAD/packages/compat/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/70b69970a2e0d9bdba8c2e9c19beb6f5b35d5db0\"\u003e\u003ccode\u003e70b6997\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/35b6b944eb63aa5a82356121a7a3a2ec24393ace\"\u003e\u003ccode\u003e35b6b94\u003c/code\u003e\u003c/a\u003e chore: update TypeScript to v6 (\u003ca href=\"https://github.com/eslint/rewrite/tree/HEAD/packages/compat/issues/417\"\u003e#417\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/7807d7107caa44ff0febbd4b2525911ddcd8027b\"\u003e\u003ccode\u003e7807d71\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/57001eafe026f667d46fea4bd5e59a5a50717c2c\"\u003e\u003ccode\u003e57001ea\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/eslint/rewrite/commit/0b621334efd3bb68e2bba3f1649046d1a720f0e6\"\u003e\u003ccode\u003e0b62133\u003c/code\u003e\u003c/a\u003e docs: Update README sponsors\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/eslint/rewrite/commits/compat-v2.1.0/packages/compat\"\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.4 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\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/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\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/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\u003eSee full diff 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\u003cbr /\u003e\n\nUpdates `tailwindcss` from 4.2.4 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\"\u003etailwindcss'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss'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\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/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/issues/20023\"\u003e#20023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/59936c6cbb69eae114bc52d0a3c9315b18c70a94\"\u003e\u003ccode\u003e59936c6\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003etab-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20022\"\u003e#20022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/90a2373620200bf7e04d1d228a0d0a1c506e532a\"\u003e\u003ccode\u003e90a2373\u003c/code\u003e\u003c/a\u003e add \u003ccode\u003ezoom-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20020\"\u003e#20020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2e1ccf7f115732032d2b079073dcb0009baf82a0\"\u003e\u003ccode\u003e2e1ccf7\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003escrollbar-gutter-*\u003c/code\u003e utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20018\"\u003e#20018\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/754e7512ca51db1f922dc67724cf85a0fde923a9\"\u003e\u003ccode\u003e754e751\u003c/code\u003e\u003c/a\u003e Use non-existing example in tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20021\"\u003e#20021\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/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/issues/20013\"\u003e#20013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/8c779899bbc94f9f642db47cafdd363dd094984a\"\u003e\u003ccode\u003e8c77989\u003c/code\u003e\u003c/a\u003e Ensure math operators are surrounded by whitespace in arbitrary values (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/20011\"\u003e#20011\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/b4db3b99d1bc6209a936df34914e0fc34b3e5095\"\u003e\u003ccode\u003eb4db3b9\u003c/code\u003e\u003c/a\u003e Add scrollbar-width and scrollbar-color utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19981\"\u003e#19981\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/08cad84bbe2002398655d7f981eae47379e07fc3\"\u003e\u003ccode\u003e08cad84\u003c/code\u003e\u003c/a\u003e Support \u003ccode\u003e--default(…)\u003c/code\u003e in \u003ccode\u003e--value(…)\u003c/code\u003e and \u003ccode\u003e--modifier(…)\u003c/code\u003e to support fallbac...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/tailwindcss\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `vercel` from 53.2.0 to 53.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vercel/vercel/releases\"\u003evercel's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003evercel@53.3.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [f0d7d32]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/build-utils\u003c/code\u003e\u003ca href=\"https://github.com/13\"\u003e\u003ccode\u003e@​13\u003c/code\u003e\u003c/a\u003e.22.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/node\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.7.17\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/backends\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.4.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/elysia\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.75\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/express\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.85\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/fastify\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.78\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/go\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.6.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/h3\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.84\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/hono\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.78\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/hydrogen\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.3.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/koa\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.58\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/nestjs\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.79\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/next\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.17.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/python\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.39.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/redwood\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.4.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/remix-builder\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.8.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/ruby\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.3.2\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/rust\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.2.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/static-build\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.9.24\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003evercel@53.3.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [82edff0]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/cli-config\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003evercel@53.3.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edbfcc04: \u003ccode\u003evercel connex list\u003c/code\u003e now defaults to clients linked to the current project. When no project is linked, it falls back to listing every Connex client in the team (same as \u003ccode\u003e--all-projects\u003c/code\u003e). Use \u003ccode\u003e--all-projects\u003c/code\u003e to force the team-wide view; the table includes a \u003ccode\u003eProjects\u003c/code\u003e column with the linked project names per client (with a \u003ccode\u003e+ more\u003c/code\u003e suffix when truncated).\u003c/li\u003e\n\u003cli\u003e3b368bd: Add \u003ccode\u003e--format=json\u003c/code\u003e support to \u003ccode\u003evercel project token\u003c/code\u003e, direct token output to stdout instead of stderr.\u003c/li\u003e\n\u003cli\u003e34f595a: Extract CLI global config and auth config helpers into new \u003ccode\u003e@vercel/cli-config\u003c/code\u003e, use \u003ccode\u003e@effect/schema\u003c/code\u003e for config validation.\u003c/li\u003e\n\u003cli\u003eb4ada64: Implement scheduled jobs for JS/TS.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e1dae59c: Allow \u003ccode\u003evc logs \u0026lt;deployment-url\u0026gt;\u003c/code\u003e to resolve the project from the deployment instead of requiring a linked local project, and include the current scope in related lookup errors.\u003c/li\u003e\n\u003cli\u003e7e64cc2: Show a clearer error instead of querying logs for deployments that never reached Ready.\u003c/li\u003e\n\u003cli\u003e2dac1cb: Use Git repository and root directory matches before folder-name matches when linking projects.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [e53dd86]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [ae20217]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [34f595a]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [b4ada64]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [94c29b8]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/build-utils\u003c/code\u003e\u003ca href=\"https://github.com/13\"\u003e\u003ccode\u003e@​13\u003c/code\u003e\u003c/a\u003e.22.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/backends\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.4.0\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/vercel/vercel/blob/main/packages/cli/CHANGELOG.md\"\u003evercel's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e53.3.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [f0d7d32]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/build-utils\u003c/code\u003e\u003ca href=\"https://github.com/13\"\u003e\u003ccode\u003e@​13\u003c/code\u003e\u003c/a\u003e.22.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/node\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.7.17\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/backends\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.4.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/elysia\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.75\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/express\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.85\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/fastify\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.78\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/go\u003c/code\u003e\u003ca href=\"https://github.com/3\"\u003e\u003ccode\u003e@​3\u003c/code\u003e\u003c/a\u003e.6.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/h3\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.84\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/hono\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.78\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/hydrogen\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.3.7\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/koa\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.58\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/nestjs\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.2.79\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/next\u003c/code\u003e\u003ca href=\"https://github.com/4\"\u003e\u003ccode\u003e@​4\u003c/code\u003e\u003c/a\u003e.17.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/python\u003c/code\u003e\u003ca href=\"https://github.com/6\"\u003e\u003ccode\u003e@​6\u003c/code\u003e\u003c/a\u003e.39.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/redwood\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.4.13\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/remix-builder\u003c/code\u003e\u003ca href=\"https://github.com/5\"\u003e\u003ccode\u003e@​5\u003c/code\u003e\u003c/a\u003e.8.1\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/ruby\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.3.2\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/rust\u003c/code\u003e\u003ca href=\"https://github.com/1\"\u003e\u003ccode\u003e@​1\u003c/code\u003e\u003c/a\u003e.2.0\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/static-build\u003c/code\u003e\u003ca href=\"https://github.com/2\"\u003e\u003ccode\u003e@​2\u003c/code\u003e\u003c/a\u003e.9.24\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e53.3.1\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated dependencies [82edff0]\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@​vercel/cli-config\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.1.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e53.3.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edbfcc04: \u003ccode\u003evercel connex list\u003c/code\u003e now defaults to clients linked to the current project. When no project is linked, it falls back to listing every Connex client in the team (same as \u003ccode\u003e--all-projects\u003c/code\u003e). Use \u003ccode\u003e--all-projects\u003c/code\u003e to force the team-wide view; the table includes a \u003ccode\u003eProjects\u003c/code\u003e column with the linked project names per client (with a \u003ccode\u003e+ more\u003c/code\u003e suffix when truncated).\u003c/li\u003e\n\u003cli\u003e3b368bd: Add \u003ccode\u003e--format=json\u003c/code\u003e support to \u003ccode\u003evercel project token\u003c/code\u003e, direct token output to stdout instead of stderr.\u003c/li\u003e\n\u003cli\u003e34f595a: Extract CLI global config and auth config helpers into new \u003ccode\u003e@vercel/cli-config\u003c/code\u003e, use \u003ccode\u003e@effect/schema\u003c/code\u003e for config validation.\u003c/li\u003e\n\u003cli\u003eb4ada64: Implement scheduled jobs for JS/TS.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e1dae59c: Allow \u003ccode\u003evc logs \u0026lt;deployment-url\u0026gt;\u003c/code\u003e to resolve the project from the deployment instead of requiring a linked local project, and include the current scope in related lookup errors.\u003c/li\u003e\n\u003cli\u003e7e64cc2: Show a clearer error instead of querying logs for deployments that never reached Ready.\u003c/li\u003e\n\u003cli\u003e2dac1cb: Use Git repository and root directory matches before folder-name matches when linking projects.\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [e53dd86]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [ae20217]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [34f595a]\u003c/li\u003e\n\u003cli\u003eUpdated dependencies [b4ada64]\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/vercel/commit/5b4ece0b528756012c21da9086ac8197eb134cfa\"\u003e\u003ccode\u003e5b4ece0\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16275\"\u003e#16275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/68248c7be5333156de449107c643ed6100937b27\"\u003e\u003ccode\u003e68248c7\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16272\"\u003e#16272\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/8a127cee8a0ae16f4cbe0c4b596cdffe089bdd84\"\u003e\u003ccode\u003e8a127ce\u003c/code\u003e\u003c/a\u003e Version Packages (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16235\"\u003e#16235\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/c20fa112463b12a5b1956415603b01759f856e50\"\u003e\u003ccode\u003ec20fa11\u003c/code\u003e\u003c/a\u003e test(cli): avoid README in cwd deploy fixture (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16265\"\u003e#16265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/b4ada643daebba9c5dec3a5d6fcee6953e778f8e\"\u003e\u003ccode\u003eb4ada64\u003c/code\u003e\u003c/a\u003e [services] Add static schedule cron services for js/ts. (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16158\"\u003e#16158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/7e64cc27f58912ed5313617e502aa6db84ea0a1c\"\u003e\u003ccode\u003e7e64cc2\u003c/code\u003e\u003c/a\u003e cli/logs: Handle non-live deployments (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16247\"\u003e#16247\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/2dac1cb26220f4af4deab61830443ae199791942\"\u003e\u003ccode\u003e2dac1cb\u003c/code\u003e\u003c/a\u003e Use repo link behavior when possible during \u003ccode\u003evc link\u003c/code\u003e (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16238\"\u003e#16238\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/dbfcc04037e05cb1d3d1d98b9556aad0b36958de\"\u003e\u003ccode\u003edbfcc04\u003c/code\u003e\u003c/a\u003e [cli] connex: Scope list clients to current project by default; add --all (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/1dae59c918f44fadc834ede3c17b26f7727e7a93\"\u003e\u003ccode\u003e1dae59c\u003c/code\u003e\u003c/a\u003e cli/logs: Resolve deployment targets without linked projects (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16246\"\u003e#16246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vercel/vercel/commit/3b368bda6871258606d6b92696bffc3bc11605cc\"\u003e\u003ccode\u003e3b368bd\u003c/code\u003e\u003c/a\u003e cli/project/token: Add JSON output mode, print to stdout (\u003ca href=\"https://github.com/vercel/vercel/tree/HEAD/packages/cli/issues/16156\"\u003e#16156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vercel/vercel/commits/vercel@53.3.2/packages/cli\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/node` from 4.2.4 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/node'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/node'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\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/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-node/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-node/issues/20015\"\u003e#20015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4b5d6a594305b2914a018d52392e099468922430\"\u003e\u003ccode\u003e4b5d6a5\u003c/code\u003e\u003c/a\u003e Update enhanced-resolve 5.20.1 → 5.21.0 (minor) (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node/issues/19998\"\u003e#19998\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-node/issues/19957\"\u003e#19957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-node\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-android-arm64` from 4.2.4 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/oxide-android-arm64'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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-android-arm64'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...\n\n_Description has been truncated_","html_url":"https://github.com/poad/github-rest-api-executor/pull/422","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/poad%2Fgithub-rest-api-executor/issues/422","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/422/packages"}},{"old_version":"4.2.2","new_version":"4.2.4","update_type":"patch","path":"/apps/frontend","pr_created_at":"2026-05-05T00:09:23.000Z","version_change":"4.2.2 → 4.2.4","issue":{"uuid":"4380535275","node_id":"PR_kwDORpBe-s7YNl7s","number":29,"state":"open","title":"build(deps): bump @tailwindcss/oxide-linux-x64-gnu from 4.2.2 to 4.2.4 in /apps/frontend","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-05T00:09:23.000Z","updated_at":"2026-05-05T00:12:51.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":"/apps/frontend","ecosystem":"npm"},"body":"Bumps [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) from 4.2.2 to 4.2.4.\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/oxide-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.2.2\u0026new-version=4.2.4)](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/alvinstream-ila/dompet-kita/pull/29","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/alvinstream-ila%2Fdompet-kita/issues/29","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/29/packages"}},{"old_version":"4.2.2","new_version":"4.2.4","update_type":"patch","path":null,"pr_created_at":"2026-05-04T13:59:14.000Z","version_change":"4.2.2 → 4.2.4","issue":{"uuid":"4377156179","node_id":"PR_kwDOPag1W87YCbNW","number":84,"state":"closed","title":"chore(deps): bump the js-minor-patch group across 1 directory with 19 updates","user":"dependabot[bot]","labels":["deps","js"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-11T17:39:50.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T13:59:14.000Z","updated_at":"2026-05-11T17:39:52.000Z","time_to_close":618036,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"js-minor-patch","update_count":19,"packages":[{"name":"@inertiajs/vue3","old_version":"3.0.1","new_version":"3.0.3","repository_url":"https://github.com/inertiajs/inertia"},{"name":"@tailwindcss/vite","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@vitejs/plugin-vue","old_version":"6.0.5","new_version":"6.0.6","repository_url":"https://github.com/vitejs/vite-plugin-vue"},{"name":"@vueuse/core","old_version":"14.2.1","new_version":"14.3.0","repository_url":"https://github.com/vueuse/vueuse"},{"name":"laravel-vite-plugin","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/laravel/vite-plugin"},{"name":"reka-ui","old_version":"2.9.2","new_version":"2.9.6","repository_url":"https://github.com/unovue/reka-ui"},{"name":"tailwindcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"typescript","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"vite","old_version":"8.0.3","new_version":"8.0.10","repository_url":"https://github.com/vitejs/vite"},{"name":"vue","old_version":"3.5.31","new_version":"3.5.33","repository_url":"https://github.com/vuejs/core"},{"name":"@types/node","old_version":"25.5.0","new_version":"25.6.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"eslint","old_version":"10.1.0","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-vue","old_version":"10.8.0","new_version":"10.9.0","repository_url":"https://github.com/vuejs/eslint-plugin-vue"},{"name":"prettier","old_version":"3.8.1","new_version":"3.8.3","repository_url":"https://github.com/prettier/prettier"},{"name":"prettier-plugin-tailwindcss","old_version":"0.7.2","new_version":"0.8.0","repository_url":"https://github.com/tailwindlabs/prettier-plugin-tailwindcss"},{"name":"typescript-eslint","old_version":"8.58.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"vue-tsc","old_version":"3.2.6","new_version":"3.2.8","repository_url":"https://github.com/vuejs/language-tools"},{"name":"@rollup/rollup-linux-x64-gnu","old_version":"4.60.1","new_version":"4.60.2","repository_url":"https://github.com/rollup/rollup"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the js-minor-patch group with 19 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@inertiajs/vue3](https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3) | `3.0.1` | `3.0.3` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.2` | `4.2.4` |\n| [@vitejs/plugin-vue](https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue) | `6.0.5` | `6.0.6` |\n| [@vueuse/core](https://github.com/vueuse/vueuse/tree/HEAD/packages/core) | `14.2.1` | `14.3.0` |\n| [laravel-vite-plugin](https://github.com/laravel/vite-plugin) | `3.0.0` | `3.1.0` |\n| [reka-ui](https://github.com/unovue/reka-ui) | `2.9.2` | `2.9.6` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.2` | `4.2.4` |\n| [typescript](https://github.com/microsoft/TypeScript) | `6.0.2` | `6.0.3` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.3` | `8.0.10` |\n| [vue](https://github.com/vuejs/core) | `3.5.31` | `3.5.33` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.5.0` | `25.6.0` |\n| [eslint](https://github.com/eslint/eslint) | `10.1.0` | `10.3.0` |\n| [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) | `10.8.0` | `10.9.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) | `0.7.2` | `0.8.0` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.58.0` | `8.59.1` |\n| [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc) | `3.2.6` | `3.2.8` |\n| [@rollup/rollup-linux-x64-gnu](https://github.com/rollup/rollup) | `4.60.1` | `4.60.2` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.2` | `4.2.4` |\n\n\nUpdates `@inertiajs/vue3` from 3.0.1 to 3.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/inertiajs/inertia/releases\"\u003e@​inertiajs/vue3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[3.x] Bump Vite and Vitest by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3046\"\u003einertiajs/inertia#3046\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Update TSConfig and bump CI actions by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3047\"\u003einertiajs/inertia#3047\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Infer form data keys in \u003ccode\u003eresetOnSuccess\u003c/code\u003e and \u003ccode\u003eresetOnError\u003c/code\u003e by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3048\"\u003einertiajs/inertia#3048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fix layout props callback misclassifying function-valued props as named layouts by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3049\"\u003einertiajs/inertia#3049\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fix flash event not firing when response contains errors by \u003ca href=\"https://github.com/skryukov\"\u003e\u003ccode\u003e@​skryukov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3038\"\u003einertiajs/inertia#3038\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fire flash event after full reload by \u003ca href=\"https://github.com/skryukov\"\u003e\u003ccode\u003e@​skryukov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3041\"\u003einertiajs/inertia#3041\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Improve Playwright CI cache by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3051\"\u003einertiajs/inertia#3051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Add \u003ccode\u003eonHttpException\u003c/code\u003e, \u003ccode\u003eonNetworkError\u003c/code\u003e, and response to \u003ccode\u003eonSuccess\u003c/code\u003e in \u003ccode\u003euseHttp\u003c/code\u003e by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3050\"\u003einertiajs/inertia#3050\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/inertiajs/inertia/compare/v3.0.2...v3.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev3.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[3.x] Populate \u003ccode\u003epercentage\u003c/code\u003e in upload progress events by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3030\"\u003einertiajs/inertia#3030\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Add test for optional scroll props by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3032\"\u003einertiajs/inertia#3032\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Warm up lazy-loaded page dependencies in Vite plugin by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3035\"\u003einertiajs/inertia#3035\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Harden CI workflows and fix dependency vulnerabilities by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3031\"\u003einertiajs/inertia#3031\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.1...v3.0.2\"\u003ehttps://github.com/inertiajs/inertia/compare/v3.0.1...v3.0.2\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/inertiajs/inertia/blob/3.x/CHANGELOG.md\"\u003e@​inertiajs/vue3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.2...v3.0.3\"\u003ev3.0.3\u003c/a\u003e - 2026-04-07\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[3.x] Bump Vite and Vitest by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3046\"\u003einertiajs/inertia#3046\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Update TSConfig and bump CI actions by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3047\"\u003einertiajs/inertia#3047\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Infer form data keys in \u003ccode\u003eresetOnSuccess\u003c/code\u003e and \u003ccode\u003eresetOnError\u003c/code\u003e by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3048\"\u003einertiajs/inertia#3048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fix layout props callback misclassifying function-valued props as named layouts by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3049\"\u003einertiajs/inertia#3049\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fix flash event not firing when response contains errors by \u003ca href=\"https://github.com/skryukov\"\u003e\u003ccode\u003e@​skryukov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3038\"\u003einertiajs/inertia#3038\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Fire flash event after full reload by \u003ca href=\"https://github.com/skryukov\"\u003e\u003ccode\u003e@​skryukov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3041\"\u003einertiajs/inertia#3041\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Improve Playwright CI cache by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3051\"\u003einertiajs/inertia#3051\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Add \u003ccode\u003eonHttpException\u003c/code\u003e, \u003ccode\u003eonNetworkError\u003c/code\u003e, and response to \u003ccode\u003eonSuccess\u003c/code\u003e in \u003ccode\u003euseHttp\u003c/code\u003e by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3050\"\u003einertiajs/inertia#3050\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.2...v3.0.3\"\u003ehttps://github.com/inertiajs/inertia/compare/v3.0.2...v3.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.1...v3.0.2\"\u003ev3.0.2\u003c/a\u003e - 2026-04-02\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[3.x] Populate \u003ccode\u003epercentage\u003c/code\u003e in upload progress events by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3030\"\u003einertiajs/inertia#3030\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Add test for optional scroll props by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3032\"\u003einertiajs/inertia#3032\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Warm up lazy-loaded page dependencies in Vite plugin by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3035\"\u003einertiajs/inertia#3035\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[3.x] Harden CI workflows and fix dependency vulnerabilities by \u003ca href=\"https://github.com/pascalbaljet\"\u003e\u003ccode\u003e@​pascalbaljet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inertiajs/inertia/pull/3031\"\u003einertiajs/inertia#3031\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inertiajs/inertia/compare/v3.0.1...v3.0.2\"\u003ehttps://github.com/inertiajs/inertia/compare/v3.0.1...v3.0.2\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/inertiajs/inertia/commit/66241d2e314154b87cabe010748708fa5c7f3a9d\"\u003e\u003ccode\u003e66241d2\u003c/code\u003e\u003c/a\u003e v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/a7a499eb430516144c49293f3742647ff5764598\"\u003e\u003ccode\u003ea7a499e\u003c/code\u003e\u003c/a\u003e Add onHttpException, onNetworkError, and response to onSuccess in useHttp (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/f757d498ffae352bdba451318b3754de3df793ec\"\u003e\u003ccode\u003ef757d49\u003c/code\u003e\u003c/a\u003e Fix flash event not firing when response contains errors (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3038\"\u003e#3038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/2fe7751d6e79c4db8e5d2267cee84df88a6d294b\"\u003e\u003ccode\u003e2fe7751\u003c/code\u003e\u003c/a\u003e [3.x] Fix layout props callback misclassifying function-valued props as named...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/ffeef383f4d5a2e29c109367d85061ecca112f09\"\u003e\u003ccode\u003effeef38\u003c/code\u003e\u003c/a\u003e [3.x] Infer form data keys in \u003ccode\u003eresetOnSuccess\u003c/code\u003e and \u003ccode\u003eresetOnError\u003c/code\u003e (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3048\"\u003e#3048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/5083325d2cadcb2d0b1b484f7aae970311109a1f\"\u003e\u003ccode\u003e5083325\u003c/code\u003e\u003c/a\u003e [3.x] Update TSConfig and bump CI actions (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3047\"\u003e#3047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/0d0d99fa9b401da16252bd9a9963414f1d55ef9b\"\u003e\u003ccode\u003e0d0d99f\u003c/code\u003e\u003c/a\u003e [3.x] Bump Vite and Vitest (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3046\"\u003e#3046\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/740ae71fd656ff63613e230d9ed75eaa2801fb0e\"\u003e\u003ccode\u003e740ae71\u003c/code\u003e\u003c/a\u003e v3.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inertiajs/inertia/commit/aeac7eb8cc3388c4d5e1b893277bf58c10575484\"\u003e\u003ccode\u003eaeac7eb\u003c/code\u003e\u003c/a\u003e Added test for optional infinite scroll (\u003ca href=\"https://github.com/inertiajs/inertia/tree/HEAD/packages/vue3/issues/3032\"\u003e#3032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/inertiajs/inertia/commits/v3.0.3/packages/vue3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/vite` from 4.2.2 to 4.2.4\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.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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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.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\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/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 `@vitejs/plugin-vue` from 6.0.5 to 6.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vitejs/vite-plugin-vue/releases\"\u003e@​vitejs/plugin-vue's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eplugin-vue@6.0.6\u003c/h2\u003e\n\u003cp\u003ePlease refer to \u003ca href=\"https://github.com/vitejs/vite-plugin-vue/blob/plugin-vue@6.0.6/packages/plugin-vue/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-plugin-vue/blob/main/packages/plugin-vue/CHANGELOG.md\"\u003e@​vitejs/plugin-vue'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-plugin-vue/compare/plugin-vue@6.0.5...plugin-vue@6.0.6\"\u003e6.0.6\u003c/a\u003e (2026-04-13)\u003c!-- raw HTML omitted --\u003e\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eplugin-vue:\u003c/strong\u003e propagate multiRoot for template-only vapor components (\u003ca href=\"https://redirect.github.com/vitejs/vite-plugin-vue/issues/745\"\u003e#745\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/9e07ae94d0ca2e40cf0c2aac6a3d355a445a5e2d\"\u003e9e07ae9\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-plugin-vue/issues/738\"\u003e#738\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/050c9962660e7bb189fe8e03f0fa4cbd0b5ba766\"\u003e050c996\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 dependency rollup to ^4.59.0 (\u003ca href=\"https://redirect.github.com/vitejs/vite-plugin-vue/issues/749\"\u003e#749\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/a0e1ef83bd841c22c3fddc62189b545ec7c71729\"\u003ea0e1ef8\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove unused deps (\u003ca href=\"https://redirect.github.com/vitejs/vite-plugin-vue/issues/760\"\u003e#760\u003c/a\u003e) (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/6d834d82614ec76eb7618a2b015b6e8b0664f096\"\u003e6d834d8\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/vitejs/vite-plugin-vue/commit/51dbf4b494ef3e8b87febdb285d3c15b8a9c5490\"\u003e\u003ccode\u003e51dbf4b\u003c/code\u003e\u003c/a\u003e release: plugin-vue@6.0.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/9e07ae94d0ca2e40cf0c2aac6a3d355a445a5e2d\"\u003e\u003ccode\u003e9e07ae9\u003c/code\u003e\u003c/a\u003e feat(plugin-vue): propagate multiRoot for template-only vapor components (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue/issues/745\"\u003e#745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/050c9962660e7bb189fe8e03f0fa4cbd0b5ba766\"\u003e\u003ccode\u003e050c996\u003c/code\u003e\u003c/a\u003e fix(deps): update all non-major dependencies (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue/issues/738\"\u003e#738\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/6d834d82614ec76eb7618a2b015b6e8b0664f096\"\u003e\u003ccode\u003e6d834d8\u003c/code\u003e\u003c/a\u003e chore: remove unused deps (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue/issues/760\"\u003e#760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commit/a0e1ef83bd841c22c3fddc62189b545ec7c71729\"\u003e\u003ccode\u003ea0e1ef8\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency rollup to ^4.59.0 (\u003ca href=\"https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue/issues/749\"\u003e#749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vitejs/vite-plugin-vue/commits/plugin-vue@6.0.6/packages/plugin-vue\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@vueuse/core` from 14.2.1 to 14.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/vueuse/vueuse/releases\"\u003e@​vueuse/core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev14.3.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExpose pointer event onLongPress  -  by \u003ca href=\"https://github.com/mrcwbr\"\u003e\u003ccode\u003e@​mrcwbr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5295\"\u003evueuse/vueuse#5295\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/b1688bd2\"\u003e\u003c!-- raw HTML omitted --\u003e(b1688)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecreateInjectionState\u003c/strong\u003e: Non-undefined return when default specified  -  by \u003ca href=\"https://github.com/Laupetin\"\u003e\u003ccode\u003e@​Laupetin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5306\"\u003evueuse/vueuse#5306\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/b0c51c27\"\u003e\u003c!-- raw HTML omitted --\u003e(b0c51)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecreateReusableTemplate\u003c/strong\u003e: Add support for specifying component names  -  by \u003ca href=\"https://github.com/wbolster\"\u003e\u003ccode\u003e@​wbolster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5300\"\u003evueuse/vueuse#5300\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/ea29d5cb\"\u003e\u003c!-- raw HTML omitted --\u003e(ea29d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003enuxt\u003c/strong\u003e: Add composable variants to auto imports  -  by \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5285\"\u003evueuse/vueuse#5285\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/ac2ef95d\"\u003e\u003c!-- raw HTML omitted --\u003e(ac2ef)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseElementVisibility\u003c/strong\u003e: Add \u003ccode\u003econtrols\u003c/code\u003e option  -  by \u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5191\"\u003evueuse/vueuse#5191\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/0cb03d74\"\u003e\u003c!-- raw HTML omitted --\u003e(0cb03)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseTextareaAutosize\u003c/strong\u003e: Add optional \u003ccode\u003emaxHeight\u003c/code\u003e to limit autosize growth  -  by \u003ca href=\"https://github.com/palamarchukser\"\u003e\u003ccode\u003e@​palamarchukser\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/antfu\"\u003e\u003ccode\u003e@​antfu\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/9romise\"\u003e\u003ccode\u003e@​9romise\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5324\"\u003evueuse/vueuse#5324\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/1a3e5721\"\u003e\u003c!-- raw HTML omitted --\u003e(1a3e5)\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\u003eAdd explicit \u003ccode\u003e./package.json\u003c/code\u003e export to all packages  -  by \u003ca href=\"https://github.com/babu-ch\"\u003e\u003ccode\u003e@​babu-ch\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5343\"\u003evueuse/vueuse#5343\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/0d98998a\"\u003e\u003c!-- raw HTML omitted --\u003e(0d989)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecore\u003c/strong\u003e: Always return ssrValue in useCssSupports before mounted  -  by \u003ca href=\"https://github.com/danielroe\"\u003e\u003ccode\u003e@​danielroe\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5290\"\u003evueuse/vueuse#5290\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/76b0bcf7\"\u003e\u003c!-- raw HTML omitted --\u003e(76b0b)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edirective\u003c/strong\u003e: Create disposable directive func cleanup of side effects unmounted  -  by \u003ca href=\"https://github.com/kalu5\"\u003e\u003ccode\u003e@​kalu5\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/43081j\"\u003e\u003ccode\u003e@​43081j\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eRaman Paulau\u003c/strong\u003e and \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5244\"\u003evueuse/vueuse#5244\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/52d688fa\"\u003e\u003c!-- raw HTML omitted --\u003e(52d68)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edocs\u003c/strong\u003e: Typos in useManualRefHistory, useFocusWithin, useStorageAsync, useIntersectionObserver  -  by \u003ca href=\"https://github.com/blowsie\"\u003e\u003ccode\u003e@​blowsie\u003c/code\u003e\u003c/a\u003e, \u003cstrong\u003eSam Blowes\u003c/strong\u003e and \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5329\"\u003evueuse/vueuse#5329\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/1d9c41a0\"\u003e\u003c!-- raw HTML omitted --\u003e(1d9c4)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003edocs\u003c/strong\u003e: Add \u003ccode\u003eignoreDeprecations\u003c/code\u003e for twoslash TS 6.0 compat  -  by \u003ca href=\"https://github.com/antfu\"\u003e\u003ccode\u003e@​antfu\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5367\"\u003evueuse/vueuse#5367\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/9d1eb566\"\u003e\u003c!-- raw HTML omitted --\u003e(9d1eb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emetadata\u003c/strong\u003e: Cleanup removed function \u003ccode\u003eresolveRef\u003c/code\u003e  -  by \u003ca href=\"https://github.com/ntnyq\"\u003e\u003ccode\u003e@​ntnyq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5307\"\u003evueuse/vueuse#5307\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/49da8f9c\"\u003e\u003c!-- raw HTML omitted --\u003e(49da8)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eonClickOutside\u003c/strong\u003e: Detect iframe inside shadow DOM with detectIframe option  -  by \u003ca href=\"https://github.com/babu-ch\"\u003e\u003ccode\u003e@​babu-ch\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5336\"\u003evueuse/vueuse#5336\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/1a77b729\"\u003e\u003c!-- raw HTML omitted --\u003e(1a77b)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eshared\u003c/strong\u003e: Align overloads order of watch functions with original version  -  by \u003ca href=\"https://github.com/KazariEX\"\u003e\u003ccode\u003e@​KazariEX\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5288\"\u003evueuse/vueuse#5288\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/f1d328d5\"\u003e\u003c!-- raw HTML omitted --\u003e(f1d32)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseAxios\u003c/strong\u003e: Handle optional response data safely  -  by \u003ca href=\"https://github.com/jahnli\"\u003e\u003ccode\u003e@​jahnli\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5318\"\u003evueuse/vueuse#5318\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/51198e85\"\u003e\u003c!-- raw HTML omitted --\u003e(51198)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseCached\u003c/strong\u003e: Update comparator type and improve documentation  -  by \u003ca href=\"https://github.com/IceMooncake\"\u003e\u003ccode\u003e@​IceMooncake\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5376\"\u003evueuse/vueuse#5376\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/d886c2f5\"\u003e\u003c!-- raw HTML omitted --\u003e(d886c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseClipboard\u003c/strong\u003e: Prevents fail in Safari for async operation  -  by \u003ca href=\"https://github.com/MatteoGabriele\"\u003e\u003ccode\u003e@​MatteoGabriele\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5369\"\u003evueuse/vueuse#5369\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/5ec568d1\"\u003e\u003c!-- raw HTML omitted --\u003e(5ec56)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseSortable\u003c/strong\u003e: Re-query DOM on every \u003ccode\u003estart()\u003c/code\u003e for string selectors  -  by \u003ca href=\"https://github.com/Mini-ghost\"\u003e\u003ccode\u003e@​Mini-ghost\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5374\"\u003evueuse/vueuse#5374\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/3341fca0\"\u003e\u003c!-- raw HTML omitted --\u003e(3341f)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseVirtualList\u003c/strong\u003e: React to changes made in mutable arrays properly  -  by \u003ca href=\"https://github.com/dcherman\"\u003e\u003ccode\u003e@​dcherman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5267\"\u003evueuse/vueuse#5267\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/7069eb4c\"\u003e\u003c!-- raw HTML omitted --\u003e(7069e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseWakeLock\u003c/strong\u003e: Auto-release wake lock on component unmount  -  by \u003ca href=\"https://github.com/ProgrammingWithSid\"\u003e\u003ccode\u003e@​ProgrammingWithSid\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/OrbisK\"\u003e\u003ccode\u003e@​OrbisK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5271\"\u003evueuse/vueuse#5271\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/43937a3f\"\u003e\u003c!-- raw HTML omitted --\u003e(43937)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseWebSocket\u003c/strong\u003e: Race condition caused by onopen/onclose events.  -  by \u003ca href=\"https://github.com/DanCardin\"\u003e\u003ccode\u003e@​DanCardin\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/antfu\"\u003e\u003ccode\u003e@​antfu\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/9romise\"\u003e\u003ccode\u003e@​9romise\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5175\"\u003evueuse/vueuse#5175\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/6661c13c\"\u003e\u003c!-- raw HTML omitted --\u003e(6661c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ewhenever\u003c/strong\u003e: Improve old value types  -  by \u003ca href=\"https://github.com/VChet\"\u003e\u003ccode\u003e@​VChet\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5096\"\u003evueuse/vueuse#5096\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/979c65fa\"\u003e\u003c!-- raw HTML omitted --\u003e(979c6)\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\u003eReplace \u003ccode\u003edeepRef\u003c/code\u003e with \u003ccode\u003eshallowRef\u003c/code\u003e where appropriate  -  by \u003ca href=\"https://github.com/9romise\"\u003e\u003ccode\u003e@​9romise\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/vueuse/vueuse/issues/5293\"\u003evueuse/vueuse#5293\u003c/a\u003e \u003ca href=\"https://github.com/vueuse/vueuse/commit/80004f79\"\u003e\u003c!-- raw HTML omitted --\u003e(80004)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/vueuse/vueuse/compare/v14.2.1...v14.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/vueuse/vueuse/commit/99c5df9a1017733046b496a6bb585d9fed7fbe8f\"\u003e\u003ccode\u003e99c5df9\u003c/code\u003e\u003c/a\u003e chore: release v14.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/1a3e57213e39a565998439906fcbf0bafc39d8ee\"\u003e\u003ccode\u003e1a3e572\u003c/code\u003e\u003c/a\u003e feat(useTextareaAutosize): add optional \u003ccode\u003emaxHeight\u003c/code\u003e to limit autosize growth ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/d886c2f5f8194632eb0a9244c3615e7eee2450a9\"\u003e\u003ccode\u003ed886c2f\u003c/code\u003e\u003c/a\u003e fix(useCached): update comparator type and improve documentation (\u003ca href=\"https://github.com/vueuse/vueuse/tree/HEAD/packages/core/issues/5376\"\u003e#5376\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/acf182ec8c2ce48f2c6713d85efb887b7de0f845\"\u003e\u003ccode\u003eacf182e\u003c/code\u003e\u003c/a\u003e docs(useCloned): add tip about watch flush timing (\u003ca href=\"https://github.com/vueuse/vueuse/tree/HEAD/packages/core/issues/5375\"\u003e#5375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/5ec568d17d45502625125ebe18d5370338e27d6e\"\u003e\u003ccode\u003e5ec568d\u003c/code\u003e\u003c/a\u003e fix(useClipboard): prevents fail in Safari for async operation (\u003ca href=\"https://github.com/vueuse/vueuse/tree/HEAD/packages/core/issues/5369\"\u003e#5369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/52d688fa3f91bb8d8c77b1afd4e57db6724f48f0\"\u003e\u003ccode\u003e52d688f\u003c/code\u003e\u003c/a\u003e fix(directive): create disposable directive func cleanup of side effects unmo...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/df724509e0cb35a8b02aadaeb954d902b1810d13\"\u003e\u003ccode\u003edf72450\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/1aa211e48e26e00ab7b9a6e7352f3274975b5c90\"\u003e\u003ccode\u003e1aa211e\u003c/code\u003e\u003c/a\u003e Make demo of \u003ccode\u003euseElementSize\u003c/code\u003e \u003ccode\u003ereadonly\u003c/code\u003e (\u003ca href=\"https://github.com/vueuse/vueuse/tree/HEAD/packages/core/issues/5365\"\u003e#5365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/0d98998ad56d99899d390f3f8d73a9955f77750e\"\u003e\u003ccode\u003e0d98998\u003c/code\u003e\u003c/a\u003e fix: add explicit \u003ccode\u003e./package.json\u003c/code\u003e export to all packages (\u003ca href=\"https://github.com/vueuse/vueuse/tree/HEAD/packages/core/issues/5343\"\u003e#5343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vueuse/vueuse/commit/8c252c33d57da4bd4a39d7318264e1f565760160\"\u003e\u003ccode\u003e8c252c3\u003c/code\u003e\u003c/a\u003e refactor: change primitive to \u003ccode\u003eshallowReadonly\u003c/code\u003e, rename \u003ccode\u003ereadonly\u003c/code\u003e usage to `...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/vueuse/vueuse/commits/v14.3.0/packages/core\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `laravel-vite-plugin` from 3.0.0 to 3.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/laravel/vite-plugin/releases\"\u003elaravel-vite-plugin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.3...v3.1.0\"\u003ehttps://github.com/laravel/vite-plugin/compare/v3.0.3...v3.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev3.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd font optimization plugin by \u003ca href=\"https://github.com/WendellAdriel\"\u003e\u003ccode\u003e@​WendellAdriel\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/348\"\u003elaravel/vite-plugin#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd release script and publish workflow by \u003ca href=\"https://github.com/joetannenbaum\"\u003e\u003ccode\u003e@​joetannenbaum\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/351\"\u003elaravel/vite-plugin#351\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/WendellAdriel\"\u003e\u003ccode\u003e@​WendellAdriel\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/348\"\u003elaravel/vite-plugin#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joetannenbaum\"\u003e\u003ccode\u003e@​joetannenbaum\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/351\"\u003elaravel/vite-plugin#351\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.1...v3.0.3\"\u003ehttps://github.com/laravel/vite-plugin/compare/v3.0.1...v3.0.3\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/laravel/vite-plugin/blob/3.x/CHANGELOG.md\"\u003elaravel-vite-plugin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.3...v3.1.0\"\u003ev3.1.0\u003c/a\u003e - 2026-04-29\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.3...v3.1.0\"\u003ehttps://github.com/laravel/vite-plugin/compare/v3.0.3...v3.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.0...v3.0.3\"\u003ev3.0.3\u003c/a\u003e - 2026-04-29\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd font optimization plugin by \u003ca href=\"https://github.com/WendellAdriel\"\u003e\u003ccode\u003e@​WendellAdriel\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/348\"\u003elaravel/vite-plugin#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd release script and publish workflow by \u003ca href=\"https://github.com/joetannenbaum\"\u003e\u003ccode\u003e@​joetannenbaum\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/351\"\u003elaravel/vite-plugin#351\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Contributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/WendellAdriel\"\u003e\u003ccode\u003e@​WendellAdriel\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/348\"\u003elaravel/vite-plugin#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joetannenbaum\"\u003e\u003ccode\u003e@​joetannenbaum\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/laravel/vite-plugin/pull/351\"\u003elaravel/vite-plugin#351\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.1...v3.0.3\"\u003ehttps://github.com/laravel/vite-plugin/compare/v3.0.1...v3.0.3\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/laravel/vite-plugin/commit/c30bff49114feaf1e76302277f9f4b8513fa96d8\"\u003e\u003ccode\u003ec30bff4\u003c/code\u003e\u003c/a\u003e v3.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/43c8679e2b2e3e8e2739d9a65650c207ed5fd77b\"\u003e\u003ccode\u003e43c8679\u003c/code\u003e\u003c/a\u003e Merge branch '3.x' of github.com:laravel/vite-plugin into 3.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/3e531d0a16bdfe7684da798d365ad0bef9953b20\"\u003e\u003ccode\u003e3e531d0\u003c/code\u003e\u003c/a\u003e Update publish.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/ab238402ded4fa4338a57c74781183d592b0bee9\"\u003e\u003ccode\u003eab23840\u003c/code\u003e\u003c/a\u003e Update CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/01d1725fc91edb034e5571c801ad9ecf2db4b14f\"\u003e\u003ccode\u003e01d1725\u003c/code\u003e\u003c/a\u003e v3.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/efec294fd0f50cc1f3538fda30f246d35ae8a551\"\u003e\u003ccode\u003eefec294\u003c/code\u003e\u003c/a\u003e Add release script and publish workflow (\u003ca href=\"https://redirect.github.com/laravel/vite-plugin/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/5cb4e786fb0edbd7563a7a310d5675132948e012\"\u003e\u003ccode\u003e5cb4e78\u003c/code\u003e\u003c/a\u003e Update package.json\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/0236378b598d4a35f02757d5ab21acabebad75f8\"\u003e\u003ccode\u003e0236378\u003c/code\u003e\u003c/a\u003e Add font optimization plugin (\u003ca href=\"https://redirect.github.com/laravel/vite-plugin/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/13ab8b35b2cbe931e4d6bd418642854ab8724c64\"\u003e\u003ccode\u003e13ab8b3\u003c/code\u003e\u003c/a\u003e 3.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/laravel/vite-plugin/commit/3998cf0bd8da825ebcadbd1997ffb50e75ad204a\"\u003e\u003ccode\u003e3998cf0\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eassets\u003c/code\u003e option emitting JS wrappers instead of static files (\u003ca href=\"https://redirect.github.com/laravel/vite-plugin/issues/345\"\u003e#345\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/laravel/vite-plugin/compare/v3.0.0...v3.1.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 laravel-vite-plugin since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `reka-ui` from 2.9.2 to 2.9.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/unovue/reka-ui/releases\"\u003ereka-ui's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.9.6\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eExport missing TimeRange type  -  by \u003ca href=\"https://github.com/Bahtya\"\u003e\u003ccode\u003e@​Bahtya\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2590\"\u003eunovue/reka-ui#2590\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/70e7286b\"\u003e\u003c!-- raw HTML omitted --\u003e(70e72)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eMonthPicker, YearPicker\u003c/strong\u003e: Preserve day/month when selecting  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2594\"\u003eunovue/reka-ui#2594\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/836f2e92\"\u003e\u003c!-- raw HTML omitted --\u003e(836f2)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eTimeField\u003c/strong\u003e: Change focus after pressing 0 more than once on hour segment with 12 hour locales  -  by \u003ca href=\"https://github.com/zomakus\"\u003e\u003ccode\u003e@​zomakus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2581\"\u003eunovue/reka-ui#2581\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/1d77296b\"\u003e\u003c!-- raw HTML omitted --\u003e(1d772)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/unovue/reka-ui/compare/v2.9.5...v2.9.6\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.9.5\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ecore\u003c/strong\u003e: Prevent /\u003cem\u003e#\u003cstrong\u003ePURE\u003c/strong\u003e\u003c/em\u003e/ annotation inside function declarations  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Sonnet 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2585\"\u003eunovue/reka-ui#2585\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/d7349e7d\"\u003e\u003c!-- raw HTML omitted --\u003e(d7349)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/unovue/reka-ui/compare/v2.9.4...v2.9.5\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.9.4\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAutomate namespaced components generation on build  -  by \u003ca href=\"https://github.com/mateusznarowski\"\u003e\u003ccode\u003e@​mateusznarowski\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2571\"\u003eunovue/reka-ui#2571\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/07951b19\"\u003e\u003c!-- raw HTML omitted --\u003e(07951)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove production tree-shaking  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2577\"\u003eunovue/reka-ui#2577\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/6ff20c35\"\u003e\u003c!-- raw HTML omitted --\u003e(6ff20)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDateField\u003c/strong\u003e: Fixed direct incorrect passing of date values to input element  -  by \u003ca href=\"https://github.com/rastuhacode\"\u003e\u003ccode\u003e@​rastuhacode\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2549\"\u003eunovue/reka-ui#2549\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/9c098224\"\u003e\u003c!-- raw HTML omitted --\u003e(9c098)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eListboxVirtualizer\u003c/strong\u003e: Ignore non-element VNodes in slot children  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Opus 4.6 (1M context)\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2578\"\u003eunovue/reka-ui#2578\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/06042b43\"\u003e\u003c!-- raw HTML omitted --\u003e(06042)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eSelect\u003c/strong\u003e: Normalize hidden control  -  by \u003ca href=\"https://github.com/CTOJoe\"\u003e\u003ccode\u003e@​CTOJoe\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2572\"\u003eunovue/reka-ui#2572\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2573\"\u003eunovue/reka-ui#2573\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/172ea67c\"\u003e\u003c!-- raw HTML omitted --\u003e(172ea)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eTimeField,DateField\u003c/strong\u003e: Avoid changing focus prematurely with previous segment value of 0  -  by \u003ca href=\"https://github.com/zomakus\"\u003e\u003ccode\u003e@​zomakus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2568\"\u003eunovue/reka-ui#2568\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/c04bed34\"\u003e\u003c!-- raw HTML omitted --\u003e(c04be)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/unovue/reka-ui/compare/v2.9.3...v2.9.4\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev2.9.3\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eAutocomplete\u003c/strong\u003e: Add IME composition input handling  -  by \u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2541\"\u003eunovue/reka-ui#2541\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/987caf1f\"\u003e\u003c!-- raw HTML omitted --\u003e(987ca)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eColorField/ColorArea\u003c/strong\u003e: Forward custom attributes in ColorFieldRoot  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Sonnet 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2559\"\u003eunovue/reka-ui#2559\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/700c8759\"\u003e\u003c!-- raw HTML omitted --\u003e(700c8)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eCombobox\u003c/strong\u003e: Prevent \u003ccode\u003eaddOnBlur\u003c/code\u003e from adding raw input when selecting item  -  by \u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2514\"\u003eunovue/reka-ui#2514\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/bc1db727\"\u003e\u003c!-- raw HTML omitted --\u003e(bc1db)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eFocusScope\u003c/strong\u003e: Don't move focus if DOM mutation occurred before any nodes had focus  -  by \u003ca href=\"https://github.com/romansp\"\u003e\u003ccode\u003e@​romansp\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2546\"\u003eunovue/reka-ui#2546\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/91023867\"\u003e\u003c!-- raw HTML omitted --\u003e(91023)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eListbox\u003c/strong\u003e: Restore highlightOnHover behavior  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Sonnet 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2558\"\u003eunovue/reka-ui#2558\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/ffde59ca\"\u003e\u003c!-- raw HTML omitted --\u003e(ffde5)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ePinInput\u003c/strong\u003e: Paste only numeric text in numeric mode  -  by \u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2516\"\u003eunovue/reka-ui#2516\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/bf7190ab\"\u003e\u003c!-- raw HTML omitted --\u003e(bf719)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eSelect\u003c/strong\u003e: Export SelectItemEmits type  -  by \u003ca href=\"https://github.com/CTOJoe\"\u003e\u003ccode\u003e@​CTOJoe\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2526\"\u003eunovue/reka-ui#2526\u003c/a\u003e and \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2527\"\u003eunovue/reka-ui#2527\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/49d1d32b\"\u003e\u003c!-- raw HTML omitted --\u003e(49d1d)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003etooltip,hovercard\u003c/strong\u003e: Close when scrollable ancestor is scrolled  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Sonnet 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2557\"\u003eunovue/reka-ui#2557\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/a987ad50\"\u003e\u003c!-- raw HTML omitted --\u003e(a987a)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseForwardProps\u003c/strong\u003e: Return Partial\u003c!-- raw HTML omitted --\u003e to correctly type optional boolean props  -  by \u003ca href=\"https://github.com/zernonia\"\u003e\u003ccode\u003e@​zernonia\u003c/code\u003e\u003c/a\u003e and \u003cstrong\u003eClaude Sonnet 4.6\u003c/strong\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2561\"\u003eunovue/reka-ui#2561\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/c22a4318\"\u003e\u003c!-- raw HTML omitted --\u003e(c22a4)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003euseGraceArea\u003c/strong\u003e: Add nil guard for hover target in grace area creation  -  by \u003ca href=\"https://github.com/kricsleo\"\u003e\u003ccode\u003e@​kricsleo\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2553\"\u003eunovue/reka-ui#2553\u003c/a\u003e \u003ca href=\"https://github.com/unovue/reka-ui/commit/67fb1bd1\"\u003e\u003c!-- raw HTML omitted --\u003e(67fb1)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/unovue/reka-ui/compare/v2.9.2...v2.9.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/unovue/reka-ui/commit/e5667c2ab8905c5826911eee09fe95560791ad03\"\u003e\u003ccode\u003ee5667c2\u003c/code\u003e\u003c/a\u003e chore: release v2.9.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/836f2e92923c5d063c724f5d0b120176be28bd76\"\u003e\u003ccode\u003e836f2e9\u003c/code\u003e\u003c/a\u003e fix(MonthPicker, YearPicker): preserve day/month when selecting (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2594\"\u003e#2594\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/1d77296bd2914569b70c5324ccb70249754d31a1\"\u003e\u003ccode\u003e1d77296\u003c/code\u003e\u003c/a\u003e fix(TimeField): change focus after pressing 0 more than once on hour segment ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/fbd9f04b69b9aaffed4a1c25160b18484855233b\"\u003e\u003ccode\u003efbd9f04\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency vite to ^8.0.8 (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2592\"\u003e#2592\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/70e7286b693590ec76878d92fa218828544a1b26\"\u003e\u003ccode\u003e70e7286\u003c/code\u003e\u003c/a\u003e fix: export missing TimeRange type (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2590\"\u003e#2590\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/68a490b73c1dafa5983fc410bc14562d163322b7\"\u003e\u003ccode\u003e68a490b\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;chore(deps): bump vite from 5.4.21 to 8.0.5 (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2584\"\u003e#2584\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/e655d299bc7ba32ef3087394b2c8075cc3eecb09\"\u003e\u003ccode\u003ee655d29\u003c/code\u003e\u003c/a\u003e chore: release v2.9.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/ef016f26cbf15bd6914f9cb38a89b11f3fba0ed5\"\u003e\u003ccode\u003eef016f2\u003c/code\u003e\u003c/a\u003e chore(deps): bump vite from 5.4.21 to 8.0.5 (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2584\"\u003e#2584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/d7349e7db110d767e030fa8541f0fc737613efa6\"\u003e\u003ccode\u003ed7349e7\u003c/code\u003e\u003c/a\u003e fix(core): prevent /\u003cem\u003e#\u003cstrong\u003ePURE\u003c/strong\u003e\u003c/em\u003e/ annotation inside function declarations (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2585\"\u003e#2585\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/unovue/reka-ui/commit/5cc56e0b573e898e667f07fd2a340686b2c36cfc\"\u003e\u003ccode\u003e5cc56e0\u003c/code\u003e\u003c/a\u003e chore(deps-dev): bump vite from 8.0.3 to 8.0.5 (\u003ca href=\"https://redirect.github.com/unovue/reka-ui/issues/2582\"\u003e#2582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/unovue/reka-ui/compare/v2.9.2...v2.9.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwindcss` from 4.2.2 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003etailwindcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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 w...\n\n_Description has been truncated_","html_url":"https://github.com/SirMishaa/obsvr/pull/84","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/SirMishaa%2Fobsvr/issues/84","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/84/packages"}},{"old_version":"4.2.1","new_version":"4.2.4","update_type":"patch","path":null,"pr_created_at":"2026-05-04T02:11:20.000Z","version_change":"4.2.1 → 4.2.4","issue":{"uuid":"4373645519","node_id":"PR_kwDORhEIoc7X24Wm","number":18,"state":"closed","title":"Bump the all group with 220 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-11T01:54:02.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T02:11:20.000Z","updated_at":"2026-05-11T01:54:04.000Z","time_to_close":603762,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"all","update_count":220,"packages":[{"name":"@hey-api/openapi-ts","old_version":"0.94.0","new_version":"0.97.1","repository_url":"https://github.com/hey-api/openapi-ts"},{"name":"@libsql/client","old_version":"0.17.0","new_version":"0.17.3","repository_url":"https://github.com/tursodatabase/libsql-client-ts"},{"name":"@lingui/core","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/react","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@supabase/supabase-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@tailwindcss/vite","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/react-query","old_version":"5.95.2","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-router","old_version":"1.166.7","new_version":"1.169.1","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/react-virtual","old_version":"3.13.23","new_version":"3.13.24","repository_url":"https://github.com/TanStack/virtual"},{"name":"@tanstack/router-plugin","old_version":"1.166.7","new_version":"1.167.32","repository_url":"https://github.com/TanStack/router"},{"name":"@trpc/client","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/react-query","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"@trpc/server","old_version":"11.12.0","new_version":"11.17.0","repository_url":"https://github.com/trpc/trpc"},{"name":"framer-motion","old_version":"12.35.2","new_version":"12.38.0","repository_url":"https://github.com/motiondivision/motion"},{"name":"megajs","old_version":"1.3.9","new_version":"1.3.10","repository_url":"https://github.com/qgustavor/mega"},{"name":"pixi.js","old_version":"8.17.0","new_version":"8.18.1","repository_url":"https://github.com/pixijs/pixijs"},{"name":"react","old_version":"19.2.4","new_version":"19.2.5","repository_url":"https://github.com/facebook/react"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.5","repository_url":"https://github.com/facebook/react"},{"name":"systeminformation","old_version":"5.31.4","new_version":"5.31.5","repository_url":"https://github.com/sebhildebrandt/systeminformation"},{"name":"tailwindcss","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"yauzl","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/thejoshwolfe/yauzl"},{"name":"zod","old_version":"4.3.6","new_version":"4.4.2","repository_url":"https://github.com/colinhacks/zod"},{"name":"@eslint/js","old_version":"9.39.4","new_version":"10.0.1","repository_url":"https://github.com/eslint/eslint"},{"name":"@lingui/cli","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@types/node","old_version":"25.4.0","new_version":"25.6.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@vitejs/plugin-react","old_version":"5.1.4","new_version":"6.0.1","repository_url":"https://github.com/vitejs/vite-plugin-react"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"electron","old_version":"41.1.1","new_version":"41.5.0","repository_url":"https://github.com/electron/electron"},{"name":"eslint","old_version":"9.39.4","new_version":"10.3.0","repository_url":"https://github.com/eslint/eslint"},{"name":"eslint-plugin-react-hooks","old_version":"7.0.1","new_version":"7.1.1","repository_url":"https://github.com/facebook/react"},{"name":"globals","old_version":"17.4.0","new_version":"17.6.0","repository_url":"https://github.com/sindresorhus/globals"},{"name":"javascript-obfuscator","old_version":"5.3.0","new_version":"5.4.2","repository_url":"https://github.com/javascript-obfuscator/javascript-obfuscator"},{"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.3","new_version":"16.4.0","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":"terser","old_version":"5.46.0","new_version":"5.46.2","repository_url":"https://github.com/terser/terser"},{"name":"typescript","old_version":"5.9.3","new_version":"6.0.3","repository_url":"https://github.com/microsoft/TypeScript"},{"name":"typescript-eslint","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"vite","old_version":"7.3.2","new_version":"8.0.10","repository_url":"https://github.com/vitejs/vite"},{"name":"vite-plugin-electron","old_version":"0.29.0","new_version":"0.29.1","repository_url":"https://github.com/electron-vite/vite-plugin-electron"},{"name":"vitest","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@asamuzakjp/css-color","old_version":"5.0.1","new_version":"5.1.11","repository_url":"https://github.com/asamuzaK/cssColor"},{"name":"@asamuzakjp/dom-selector","old_version":"6.8.1","new_version":"7.1.1","repository_url":"https://github.com/asamuzaK/domSelector"},{"name":"@babel/compat-data","old_version":"7.29.0","new_version":"7.29.3","repository_url":"https://github.com/babel/babel"},{"name":"@babel/helpers","old_version":"7.28.6","new_version":"7.29.2","repository_url":"https://github.com/babel/babel"},{"name":"@babel/parser","old_version":"7.29.0","new_version":"7.29.3","repository_url":"https://github.com/babel/babel"},{"name":"@babel/runtime","old_version":"7.28.6","new_version":"7.29.2","repository_url":"https://github.com/babel/babel"},{"name":"@csstools/css-calc","old_version":"3.1.1","new_version":"3.2.0","repository_url":"https://github.com/csstools/postcss-plugins"},{"name":"@csstools/css-color-parser","old_version":"4.0.2","new_version":"4.1.0","repository_url":"https://github.com/csstools/postcss-plugins"},{"name":"@csstools/css-syntax-patches-for-csstree","old_version":"1.0.28","new_version":"1.1.3","repository_url":"https://github.com/csstools/postcss-plugins"},{"name":"@electron/rebuild","old_version":"4.0.3","new_version":"4.0.4","repository_url":"https://github.com/electron/rebuild"},{"name":"brace-expansion","old_version":"1.1.13","new_version":"1.1.14","repository_url":"https://github.com/juliangruber/brace-expansion"},{"name":"@eslint/config-array","old_version":"0.21.2","new_version":"0.23.5","repository_url":"https://github.com/eslint/rewrite"},{"name":"@eslint/config-helpers","old_version":"0.4.2","new_version":"0.5.5","repository_url":"https://github.com/eslint/rewrite"},{"name":"@eslint/core","old_version":"0.17.0","new_version":"1.2.1","repository_url":"https://github.com/eslint/rewrite"},{"name":"@eslint/object-schema","old_version":"2.1.7","new_version":"3.0.5","repository_url":"https://github.com/eslint/rewrite"},{"name":"@eslint/plugin-kit","old_version":"0.4.1","new_version":"0.7.1","repository_url":"https://github.com/eslint/rewrite"},{"name":"@exodus/bytes","old_version":"1.14.1","new_version":"1.15.0","repository_url":"https://github.com/ExodusOSS/bytes"},{"name":"@hey-api/codegen-core","old_version":"0.7.1","new_version":"0.8.1","repository_url":"https://github.com/hey-api/openapi-ts"},{"name":"@hey-api/json-schema-ref-parser","old_version":"1.3.1","new_version":"1.4.2","repository_url":"https://github.com/hey-api/openapi-ts"},{"name":"@hey-api/shared","old_version":"0.2.2","new_version":"0.4.3","repository_url":"https://github.com/hey-api/openapi-ts"},{"name":"@hey-api/types","old_version":"0.1.3","new_version":"0.1.4","repository_url":"https://github.com/hey-api/openapi-ts"},{"name":"@humanfs/core","old_version":"0.19.1","new_version":"0.19.2","repository_url":"https://github.com/humanwhocodes/humanfs"},{"name":"@humanfs/node","old_version":"0.16.7","new_version":"0.16.8","repository_url":"https://github.com/humanwhocodes/humanfs"},{"name":"@javascript-obfuscator/escodegen","old_version":"2.3.1","new_version":"2.4.1","repository_url":"https://github.com/estools/escodegen"},{"name":"@libsql/core","old_version":"0.17.0","new_version":"0.17.3","repository_url":"https://github.com/tursodatabase/libsql-client-ts"},{"name":"@libsql/darwin-arm64","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/darwin-x64","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/hrana-client","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/libsql/hrana-client-ts"},{"name":"@libsql/linux-arm-gnueabihf","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/linux-arm-musleabihf","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/linux-arm64-gnu","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/linux-arm64-musl","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/linux-x64-gnu","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/linux-x64-musl","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@libsql/win32-x64-msvc","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"@lingui/babel-plugin-extract-messages","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/babel-plugin-lingui-macro","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"chokidar","old_version":"3.5.1","new_version":"3.6.0","repository_url":"https://github.com/paulmillr/chokidar"},{"name":"readdirp","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/paulmillr/readdirp"},{"name":"@lingui/conf","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@lingui/format-po","old_version":"5.9.5","new_version":"6.0.1","repository_url":"https://github.com/lingui/js-lingui"},{"name":"@noble/hashes","old_version":"2.0.1","new_version":"2.2.0","repository_url":"https://github.com/paulmillr/noble-hashes"},{"name":"@rolldown/pluginutils","old_version":"1.0.0-rc.3","new_version":"1.0.0-rc.7","repository_url":"https://github.com/rolldown/rolldown"},{"name":"@supabase/auth-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@supabase/functions-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@supabase/postgrest-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@supabase/realtime-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@supabase/storage-js","old_version":"2.99.1","new_version":"2.105.1","repository_url":"https://github.com/supabase/supabase-js"},{"name":"@tailwindcss/node","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-android-arm64","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-arm64","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-x64","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-freebsd-x64","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm-gnueabihf","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-gnu","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-musl","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-musl","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-wasm32-wasi","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-arm64-msvc","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-x64-msvc","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tanstack/history","old_version":"1.161.4","new_version":"1.161.6","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/query-core","old_version":"5.95.2","new_version":"5.100.9","repository_url":"https://github.com/TanStack/query"},{"name":"@tanstack/react-store","old_version":"0.9.1","new_version":"0.9.3","repository_url":"https://github.com/TanStack/store"},{"name":"@tanstack/router-core","old_version":"1.166.7","new_version":"1.169.1","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-generator","old_version":"1.166.7","new_version":"1.166.39","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/router-utils","old_version":"1.161.4","new_version":"1.161.7","repository_url":"https://github.com/TanStack/router"},{"name":"@tanstack/store","old_version":"0.9.1","new_version":"0.9.3","repository_url":"https://github.com/TanStack/store"},{"name":"@tanstack/virtual-core","old_version":"3.13.23","new_version":"3.14.0","repository_url":"https://github.com/TanStack/virtual"},{"name":"@tanstack/virtual-file-routes","old_version":"1.161.4","new_version":"1.161.7","repository_url":"https://github.com/TanStack/router"},{"name":"@types/debug","old_version":"4.1.12","new_version":"4.1.13","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"@typescript-eslint/project-service","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/scope-manager","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/tsconfig-utils","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/type-utils","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/types","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/typescript-estree","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/utils","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/visitor-keys","old_version":"8.57.0","new_version":"8.59.1","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@vercel/blob","old_version":"2.3.1","new_version":"2.3.3","repository_url":"https://github.com/vercel/storage"},{"name":"undici","old_version":"6.24.1","new_version":"6.25.0","repository_url":"https://github.com/nodejs/undici"},{"name":"@vitest/expect","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/mocker","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/pretty-format","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/runner","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/snapshot","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/spy","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@vitest/utils","old_version":"4.0.18","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"},{"name":"@xmldom/xmldom","old_version":"0.8.12","new_version":"0.8.13","repository_url":"https://github.com/xmldom/xmldom"},{"name":"abbrev","old_version":"3.0.1","new_version":"4.0.0","repository_url":"https://github.com/npm/abbrev-js"},{"name":"ajv","old_version":"6.14.0","new_version":"6.15.0","repository_url":"https://github.com/ajv-validator/ajv"},{"name":"axe-core","old_version":"4.11.1","new_version":"4.11.4","repository_url":"https://github.com/dequelabs/axe-core"},{"name":"b4a","old_version":"1.8.0","new_version":"1.8.1","repository_url":"https://github.com/holepunchto/b4a"},{"name":"bare-fs","old_version":"4.5.6","new_version":"4.7.1","repository_url":"https://github.com/holepunchto/bare-fs"},{"name":"bare-os","old_version":"3.8.6","new_version":"3.9.1","repository_url":"https://github.com/holepunchto/bare-os"},{"name":"bare-stream","old_version":"2.11.0","new_version":"2.13.1","repository_url":"https://github.com/holepunchto/bare-stream"},{"name":"bare-url","old_version":"2.4.0","new_version":"2.4.2","repository_url":"https://github.com/holepunchto/bare-url"},{"name":"baseline-browser-mapping","old_version":"2.10.0","new_version":"2.10.27","repository_url":"https://github.com/web-platform-dx/baseline-browser-mapping"},{"name":"browserslist","old_version":"4.28.1","new_version":"4.28.2","repository_url":"https://github.com/browserslist/browserslist"},{"name":"c12","old_version":"3.3.3","new_version":"3.3.4","repository_url":"https://github.com/unjs/c12"},{"name":"call-bind","old_version":"1.0.8","new_version":"1.0.9","repository_url":"https://github.com/ljharb/call-bind"},{"name":"caniuse-lite","old_version":"1.0.30001775","new_version":"1.0.30001791","repository_url":"https://github.com/browserslist/caniuse-lite"},{"name":"cli-cursor","old_version":"3.1.0","new_version":"5.0.0","repository_url":"https://github.com/sindresorhus/cli-cursor"},{"name":"cli-spinners","old_version":"2.9.2","new_version":"3.4.0","repository_url":"https://github.com/sindresorhus/cli-spinners"},{"name":"conf","old_version":"15.0.2","new_version":"15.1.0","repository_url":"https://github.com/sindresorhus/conf"},{"name":"cookie-es","old_version":"2.0.0","new_version":"3.1.1","repository_url":"https://github.com/unjs/cookie-es"},{"name":"whatwg-url","old_version":"5.0.0","new_version":"16.0.1","repository_url":"https://github.com/jsdom/whatwg-url"},{"name":"tr46","old_version":"0.0.3","new_version":"6.0.0","repository_url":"https://github.com/jsdom/tr46"},{"name":"webidl-conversions","old_version":"3.0.1","new_version":"8.0.1","repository_url":"https://github.com/jsdom/webidl-conversions"},{"name":"css-tree","old_version":"3.1.0","new_version":"3.2.1","repository_url":"https://github.com/csstree/csstree"},{"name":"diff","old_version":"8.0.3","new_version":"8.0.4","repository_url":"https://github.com/kpdecker/jsdiff"},{"name":"electron-to-chromium","old_version":"1.5.302","new_version":"1.5.349","repository_url":"https://github.com/Kilian/electron-to-chromium"},{"name":"enhanced-resolve","old_version":"5.20.0","new_version":"5.21.0","repository_url":"https://github.com/webpack/enhanced-resolve"},{"name":"entities","old_version":"6.0.1","new_version":"8.0.0","repository_url":"https://github.com/fb55/entities"},{"name":"es-abstract","old_version":"1.24.1","new_version":"1.24.2","repository_url":"https://github.com/ljharb/es-abstract"},{"name":"es-iterator-helpers","old_version":"1.2.2","new_version":"1.3.2","repository_url":"https://github.com/es-shims/iterator-helpers"},{"name":"es-module-lexer","old_version":"1.7.0","new_version":"2.1.0","repository_url":"https://github.com/guybedford/es-module-lexer"},{"name":"espree","old_version":"10.4.0","new_version":"11.2.0","repository_url":"https://github.com/eslint/js"},{"name":"get-tsconfig","old_version":"4.13.6","new_version":"4.14.0","repository_url":"https://github.com/privatenumber/get-tsconfig"},{"name":"giget","old_version":"2.0.0","new_version":"3.2.0","repository_url":"https://github.com/unjs/giget"},{"name":"hasown","old_version":"2.0.2","new_version":"2.0.3","repository_url":"https://github.com/inspect-js/hasOwn"},{"name":"is-interactive","old_version":"1.0.0","new_version":"2.0.0","repository_url":"https://github.com/sindresorhus/is-interactive"},{"name":"is-unicode-supported","old_version":"0.1.0","new_version":"2.1.0","repository_url":"https://github.com/sindresorhus/is-unicode-supported"},{"name":"isbot","old_version":"5.1.35","new_version":"5.1.39","repository_url":"https://github.com/omrilotan/isbot"},{"name":"libphonenumber-js","old_version":"1.12.38","new_version":"1.12.42"},{"name":"libsql","old_version":"0.5.22","new_version":"0.5.29","repository_url":"https://github.com/tursodatabase/libsql-js"},{"name":"lightningcss","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-android-arm64","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-darwin-arm64","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-darwin-x64","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-freebsd-x64","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-linux-arm-gnueabihf","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-linux-arm64-gnu","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-linux-arm64-musl","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-linux-x64-gnu","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-linux-x64-musl","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-win32-arm64-msvc","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"lightningcss-win32-x64-msvc","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"log-symbols","old_version":"4.1.0","new_version":"7.0.1","repository_url":"https://github.com/sindresorhus/log-symbols"},{"name":"mdn-data","old_version":"2.12.2","new_version":"2.27.1","repository_url":"https://github.com/mdn/data"},{"name":"minipass","old_version":"3.3.6","new_version":"7.1.3","repository_url":"https://github.com/isaacs/minipass"},{"name":"motion-dom","old_version":"12.35.2","new_version":"12.38.0","repository_url":"https://github.com/motiondivision/motion"},{"name":"motion-utils","old_version":"12.29.2","new_version":"12.36.0","repository_url":"https://github.com/motiondivision/motion"},{"name":"nanoid","old_version":"3.3.11","new_version":"3.3.12","repository_url":"https://github.com/ai/nanoid"},{"name":"node-abi","old_version":"4.26.0","new_version":"4.29.0","repository_url":"https://github.com/electron/node-abi"},{"name":"node-gyp","old_version":"11.5.0","new_version":"12.3.0","repository_url":"https://github.com/nodejs/node-gyp"},{"name":"node-releases","old_version":"2.0.27","new_version":"2.0.38","repository_url":"https://github.com/chicoxyzzy/node-releases"},{"name":"nopt","old_version":"8.1.0","new_version":"9.0.0","repository_url":"https://github.com/npm/nopt"},{"name":"onetime","old_version":"5.1.2","new_version":"7.0.0","repository_url":"https://github.com/sindresorhus/onetime"},{"name":"ora","old_version":"5.4.1","new_version":"9.4.0","repository_url":"https://github.com/sindresorhus/ora"},{"name":"restore-cursor","old_version":"3.1.0","new_version":"5.1.0","repository_url":"https://github.com/sindresorhus/restore-cursor"},{"name":"parse5","old_version":"8.0.0","new_version":"8.0.1","repository_url":"https://github.com/inikulin/parse5"},{"name":"pkg-types","old_version":"2.3.0","new_version":"2.3.1","repository_url":"https://github.com/unjs/pkg-types"},{"name":"postcss","old_version":"8.5.6","new_version":"8.5.13","repository_url":"https://github.com/postcss/postcss"},{"name":"proc-log","old_version":"5.0.0","new_version":"6.1.0","repository_url":"https://github.com/npm/proc-log"},{"name":"rc9","old_version":"2.1.2","new_version":"3.0.1","repository_url":"https://github.com/unjs/rc9"},{"name":"safe-array-concat","old_version":"1.1.3","new_version":"1.1.4","repository_url":"https://github.com/ljharb/safe-array-concat"},{"name":"sanitize-filename","old_version":"1.6.3","new_version":"1.6.4","repository_url":"https://github.com/parshap/node-sanitize-filename"},{"name":"sax","old_version":"1.4.4","new_version":"1.6.0","repository_url":"https://github.com/isaacs/sax-js"},{"name":"seroval","old_version":"1.5.0","new_version":"1.5.2","repository_url":"https://github.com/lxsmnsyc/seroval"},{"name":"seroval-plugins","old_version":"1.5.0","new_version":"1.5.2","repository_url":"https://github.com/lxsmnsyc/seroval"},{"name":"side-channel-list","old_version":"1.0.0","new_version":"1.0.1","repository_url":"https://github.com/ljharb/side-channel-list"},{"name":"std-env","old_version":"3.10.0","new_version":"4.1.0","repository_url":"https://github.com/unjs/std-env"},{"name":"tapable","old_version":"2.3.0","new_version":"2.3.3","repository_url":"https://github.com/webpack/tapable"},{"name":"tar-stream","old_version":"3.1.8","new_version":"3.2.0","repository_url":"https://github.com/mafintosh/tar-stream"},{"name":"tinyexec","old_version":"1.0.2","new_version":"1.1.2","repository_url":"https://github.com/tinylibs/tinyexec"},{"name":"tinyglobby","old_version":"0.2.15","new_version":"0.2.16","repository_url":"https://github.com/SuperchupuDev/tinyglobby"},{"name":"tinyrainbow","old_version":"3.0.3","new_version":"3.1.0","repository_url":"https://github.com/tinylibs/tinyrainbow"},{"name":"tldts","old_version":"7.0.23","new_version":"7.0.30","repository_url":"https://github.com/remusao/tldts"},{"name":"tldts-core","old_version":"7.0.23","new_version":"7.0.30","repository_url":"https://github.com/remusao/tldts"},{"name":"tough-cookie","old_version":"6.0.0","new_version":"6.0.1","repository_url":"https://github.com/salesforce/tough-cookie"},{"name":"ts-api-utils","old_version":"2.4.0","new_version":"2.5.0","repository_url":"https://github.com/JoshuaKGoldberg/ts-api-utils"},{"name":"unplugin","old_version":"2.3.11","new_version":"3.0.0","repository_url":"https://github.com/unjs/unplugin"},{"name":"validator","old_version":"13.15.26","new_version":"13.15.35","repository_url":"https://github.com/validatorjs/validator.js"},{"name":"ws","old_version":"8.19.0","new_version":"8.20.0","repository_url":"https://github.com/websockets/ws"},{"name":"yaml","old_version":"2.8.3","new_version":"2.8.4","repository_url":"https://github.com/eemeli/yaml"}],"path":null,"ecosystem":"npm"},"body":"Bumps the all group with 220 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@hey-api/openapi-ts](https://github.com/hey-api/openapi-ts) | `0.94.0` | `0.97.1` |\n| [@libsql/client](https://github.com/tursodatabase/libsql-client-ts/tree/HEAD/packages/libsql-client) | `0.17.0` | `0.17.3` |\n| [@lingui/core](https://github.com/lingui/js-lingui/tree/HEAD/packages/core) | `5.9.5` | `6.0.1` |\n| [@lingui/react](https://github.com/lingui/js-lingui/tree/HEAD/packages/react) | `5.9.5` | `6.0.1` |\n| [@supabase/supabase-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js) | `2.99.1` | `2.105.1` |\n| [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) | `4.2.1` | `4.2.4` |\n| [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.95.2` | `5.100.9` |\n| [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router) | `1.166.7` | `1.169.1` |\n| [@tanstack/react-virtual](https://github.com/TanStack/virtual/tree/HEAD/packages/react-virtual) | `3.13.23` | `3.13.24` |\n| [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin) | `1.166.7` | `1.167.32` |\n| [@trpc/client](https://github.com/trpc/trpc/tree/HEAD/packages/client) | `11.12.0` | `11.17.0` |\n| [@trpc/react-query](https://github.com/trpc/trpc/tree/HEAD/packages/react) | `11.12.0` | `11.17.0` |\n| [@trpc/server](https://github.com/trpc/trpc/tree/HEAD/packages/server) | `11.12.0` | `11.17.0` |\n| [framer-motion](https://github.com/motiondivision/motion) | `12.35.2` | `12.38.0` |\n| [megajs](https://github.com/qgustavor/mega) | `1.3.9` | `1.3.10` |\n| [pixi.js](https://github.com/pixijs/pixijs) | `8.17.0` | `8.18.1` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.5` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.5` |\n| [systeminformation](https://github.com/sebhildebrandt/systeminformation) | `5.31.4` | `5.31.5` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.1` | `4.2.4` |\n| [yauzl](https://github.com/thejoshwolfe/yauzl) | `3.2.1` | `3.3.0` |\n| [zod](https://github.com/colinhacks/zod) | `4.3.6` | `4.4.2` |\n| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.4` | `10.0.1` |\n| [@lingui/cli](https://github.com/lingui/js-lingui/tree/HEAD/packages/cli) | `5.9.5` | `6.0.1` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.4.0` | `25.6.0` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.57.0` | `8.59.1` |\n| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.1` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [electron](https://github.com/electron/electron) | `41.1.1` | `41.5.0` |\n| [eslint](https://github.com/eslint/eslint) | `9.39.4` | `10.3.0` |\n| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `7.0.1` | `7.1.1` |\n| [globals](https://github.com/sindresorhus/globals) | `17.4.0` | `17.6.0` |\n| [javascript-obfuscator](https://github.com/javascript-obfuscator/javascript-obfuscator) | `5.3.0` | `5.4.2` |\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.3` | `16.4.0` |\n| [prettier](https://github.com/prettier/prettier) | `3.8.1` | `3.8.3` |\n| [terser](https://github.com/terser/terser) | `5.46.0` | `5.46.2` |\n| [typescript](https://github.com/microsoft/TypeScript) | `5.9.3` | `6.0.3` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.57.0` | `8.59.1` |\n| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.3.2` | `8.0.10` |\n| [vite-plugin-electron](https://github.com/electron-vite/vite-plugin-electron) | `0.29.0` | `0.29.1` |\n| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.5` |\n| [@asamuzakjp/css-color](https://github.com/asamuzaK/cssColor) | `5.0.1` | `5.1.11` |\n| [@asamuzakjp/dom-selector](https://github.com/asamuzaK/domSelector) | `6.8.1` | `7.1.1` |\n| [@babel/compat-data](https://github.com/babel/babel/tree/HEAD/packages/babel-compat-data) | `7.29.0` | `7.29.3` |\n| [@babel/helpers](https://github.com/babel/babel/tree/HEAD/packages/babel-helpers) | `7.28.6` | `7.29.2` |\n| [@babel/parser](https://github.com/babel/babel/tree/HEAD/packages/babel-parser) | `7.29.0` | `7.29.3` |\n| [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime) | `7.28.6` | `7.29.2` |\n| [@csstools/css-calc](https://github.com/csstools/postcss-plugins/tree/HEAD/packages/css-calc) | `3.1.1` | `3.2.0` |\n| [@csstools/css-color-parser](https://github.com/csstools/postcss-plugins/tree/HEAD/packages/css-color-parser) | `4.0.2` | `4.1.0` |\n| [@csstools/css-syntax-patches-for-csstree](https://github.com/csstools/postcss-plugins/tree/HEAD/packages/css-syntax-patches-for-csstree) | `1.0.28` | `1.1.3` |\n| [@electron/rebuild](https://github.com/electron/rebuild) | `4.0.3` | `4.0.4` |\n| [brace-expansion](https://github.com/juliangruber/brace-expansion) | `1.1.13` | `1.1.14` |\n| [@eslint/config-array](https://github.com/eslint/rewrite/tree/HEAD/packages/config-array) | `0.21.2` | `0.23.5` |\n| [@eslint/config-helpers](https://github.com/eslint/rewrite/tree/HEAD/packages/config-helpers) | `0.4.2` | `0.5.5` |\n| [@eslint/core](https://github.com/eslint/rewrite/tree/HEAD/packages/core) | `0.17.0` | `1.2.1` |\n| [@eslint/object-schema](https://github.com/eslint/rewrite/tree/HEAD/packages/object-schema) | `2.1.7` | `3.0.5` |\n| [@eslint/plugin-kit](https://github.com/eslint/rewrite/tree/HEAD/packages/plugin-kit) | `0.4.1` | `0.7.1` |\n| [@exodus/bytes](https://github.com/ExodusOSS/bytes) | `1.14.1` | `1.15.0` |\n| [@hey-api/codegen-core](https://github.com/hey-api/openapi-ts) | `0.7.1` | `0.8.1` |\n| [@hey-api/json-schema-ref-parser](https://github.com/hey-api/openapi-ts) | `1.3.1` | `1.4.2` |\n| [@hey-api/shared](https://github.com/hey-api/openapi-ts) | `0.2.2` | `0.4.3` |\n| [@hey-api/types](https://github.com/hey-api/openapi-ts) | `0.1.3` | `0.1.4` |\n| [@humanfs/core](https://github.com/humanwhocodes/humanfs) | `0.19.1` | `0.19.2` |\n| [@humanfs/node](https://github.com/humanwhocodes/humanfs/tree/HEAD/packages/node) | `0.16.7` | `0.16.8` |\n| [@javascript-obfuscator/escodegen](https://github.com/estools/escodegen) | `2.3.1` | `2.4.1` |\n| [@libsql/core](https://github.com/tursodatabase/libsql-client-ts/tree/HEAD/packages/libsql-core) | `0.17.0` | `0.17.3` |\n| [@libsql/darwin-arm64](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/darwin-x64](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/hrana-client](https://github.com/libsql/hrana-client-ts) | `0.9.0` | `0.10.0` |\n| [@libsql/linux-arm-gnueabihf](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/linux-arm-musleabihf](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/linux-arm64-gnu](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/linux-arm64-musl](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/linux-x64-gnu](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/linux-x64-musl](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@libsql/win32-x64-msvc](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [@lingui/babel-plugin-extract-messages](https://github.com/lingui/js-lingui/tree/HEAD/packages/babel-plugin-extract-messages) | `5.9.5` | `6.0.1` |\n| [@lingui/babel-plugin-lingui-macro](https://github.com/lingui/js-lingui/tree/HEAD/packages/babel-plugin-lingui-macro) | `5.9.5` | `6.0.1` |\n| [chokidar](https://github.com/paulmillr/chokidar) | `3.5.1` | `3.6.0` |\n| [readdirp](https://github.com/paulmillr/readdirp) | `3.5.0` | `3.6.0` |\n| [@lingui/conf](https://github.com/lingui/js-lingui/tree/HEAD/packages/conf) | `5.9.5` | `6.0.1` |\n| [@lingui/format-po](https://github.com/lingui/js-lingui/tree/HEAD/packages/format-po) | `5.9.5` | `6.0.1` |\n| [@noble/hashes](https://github.com/paulmillr/noble-hashes) | `2.0.1` | `2.2.0` |\n| [@rolldown/pluginutils](https://github.com/rolldown/rolldown/tree/HEAD/packages/pluginutils) | `1.0.0-rc.3` | `1.0.0-rc.7` |\n| [@supabase/auth-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/auth-js) | `2.99.1` | `2.105.1` |\n| [@supabase/functions-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/functions-js) | `2.99.1` | `2.105.1` |\n| [@supabase/postgrest-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/postgrest-js) | `2.99.1` | `2.105.1` |\n| [@supabase/realtime-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/realtime-js) | `2.99.1` | `2.105.1` |\n| [@supabase/storage-js](https://github.com/supabase/supabase-js/tree/HEAD/packages/core/storage-js) | `2.99.1` | `2.105.1` |\n| [@tailwindcss/node](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-android-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/android-arm64) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-darwin-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-arm64) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-darwin-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-x64) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-freebsd-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/freebsd-x64) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm-gnueabihf](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm-gnueabihf) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-gnu) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-musl) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-linux-x64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-musl) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-wasm32-wasi](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-win32-arm64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-arm64-msvc) | `4.2.1` | `4.2.4` |\n| [@tailwindcss/oxide-win32-x64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-x64-msvc) | `4.2.1` | `4.2.4` |\n| [@tanstack/history](https://github.com/TanStack/router/tree/HEAD/packages/history) | `1.161.4` | `1.161.6` |\n| [@tanstack/query-core](https://github.com/TanStack/query/tree/HEAD/packages/query-core) | `5.95.2` | `5.100.9` |\n| [@tanstack/react-store](https://github.com/TanStack/store/tree/HEAD/packages/react-store) | `0.9.1` | `0.9.3` |\n| [@tanstack/router-core](https://github.com/TanStack/router/tree/HEAD/packages/router-core) | `1.166.7` | `1.169.1` |\n| [@tanstack/router-generator](https://github.com/TanStack/router/tree/HEAD/packages/router-generator) | `1.166.7` | `1.166.39` |\n| [@tanstack/router-utils](https://github.com/TanStack/router/tree/HEAD/packages/router-utils) | `1.161.4` | `1.161.7` |\n| [@tanstack/store](https://github.com/TanStack/store/tree/HEAD/packages/store) | `0.9.1` | `0.9.3` |\n| [@tanstack/virtual-core](https://github.com/TanStack/virtual/tree/HEAD/packages/virtual-core) | `3.13.23` | `3.14.0` |\n| [@tanstack/virtual-file-routes](https://github.com/TanStack/router/tree/HEAD/packages/virtual-file-routes) | `1.161.4` | `1.161.7` |\n| [@types/debug](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/debug) | `4.1.12` | `4.1.13` |\n| [@typescript-eslint/project-service](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/project-service) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/scope-manager](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/scope-manager) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/tsconfig-utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/tsconfig-utils) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/type-utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/type-utils) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/types](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/types) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/typescript-estree](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-estree) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/utils) | `8.57.0` | `8.59.1` |\n| [@typescript-eslint/visitor-keys](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/visitor-keys) | `8.57.0` | `8.59.1` |\n| [@vercel/blob](https://github.com/vercel/storage/tree/HEAD/packages/blob) | `2.3.1` | `2.3.3` |\n| [undici](https://github.com/nodejs/undici) | `6.24.1` | `6.25.0` |\n| [@vitest/expect](https://github.com/vitest-dev/vitest/tree/HEAD/packages/expect) | `4.0.18` | `4.1.5` |\n| [@vitest/mocker](https://github.com/vitest-dev/vitest/tree/HEAD/packages/mocker) | `4.0.18` | `4.1.5` |\n| [@vitest/pretty-format](https://github.com/vitest-dev/vitest/tree/HEAD/packages/pretty-format) | `4.0.18` | `4.1.5` |\n| [@vitest/runner](https://github.com/vitest-dev/vitest/tree/HEAD/packages/runner) | `4.0.18` | `4.1.5` |\n| [@vitest/snapshot](https://github.com/vitest-dev/vitest/tree/HEAD/packages/snapshot) | `4.0.18` | `4.1.5` |\n| [@vitest/spy](https://github.com/vitest-dev/vitest/tree/HEAD/packages/spy) | `4.0.18` | `4.1.5` |\n| [@vitest/utils](https://github.com/vitest-dev/vitest/tree/HEAD/packages/utils) | `4.0.18` | `4.1.5` |\n| [@xmldom/xmldom](https://github.com/xmldom/xmldom) | `0.8.12` | `0.8.13` |\n| [abbrev](https://github.com/npm/abbrev-js) | `3.0.1` | `4.0.0` |\n| [ajv](https://github.com/ajv-validator/ajv) | `6.14.0` | `6.15.0` |\n| [axe-core](https://github.com/dequelabs/axe-core) | `4.11.1` | `4.11.4` |\n| [b4a](https://github.com/holepunchto/b4a) | `1.8.0` | `1.8.1` |\n| [bare-fs](https://github.com/holepunchto/bare-fs) | `4.5.6` | `4.7.1` |\n| [bare-os](https://github.com/holepunchto/bare-os) | `3.8.6` | `3.9.1` |\n| [bare-stream](https://github.com/holepunchto/bare-stream) | `2.11.0` | `2.13.1` |\n| [bare-url](https://github.com/holepunchto/bare-url) | `2.4.0` | `2.4.2` |\n| [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) | `2.10.0` | `2.10.27` |\n| [browserslist](https://github.com/browserslist/browserslist) | `4.28.1` | `4.28.2` |\n| [c12](https://github.com/unjs/c12) | `3.3.3` | `3.3.4` |\n| [call-bind](https://github.com/ljharb/call-bind) | `1.0.8` | `1.0.9` |\n| [caniuse-lite](https://github.com/browserslist/caniuse-lite) | `1.0.30001775` | `1.0.30001791` |\n| [cli-cursor](https://github.com/sindresorhus/cli-cursor) | `3.1.0` | `5.0.0` |\n| [cli-spinners](https://github.com/sindresorhus/cli-spinners) | `2.9.2` | `3.4.0` |\n| [conf](https://github.com/sindresorhus/conf) | `15.0.2` | `15.1.0` |\n| [cookie-es](https://github.com/unjs/cookie-es) | `2.0.0` | `3.1.1` |\n| [whatwg-url](https://github.com/jsdom/whatwg-url) | `5.0.0` | `16.0.1` |\n| [tr46](https://github.com/jsdom/tr46) | `0.0.3` | `6.0.0` |\n| [webidl-conversions](https://github.com/jsdom/webidl-conversions) | `3.0.1` | `8.0.1` |\n| [css-tree](https://github.com/csstree/csstree) | `3.1.0` | `3.2.1` |\n| [diff](https://github.com/kpdecker/jsdiff) | `8.0.3` | `8.0.4` |\n| [electron-to-chromium](https://github.com/Kilian/electron-to-chromium) | `1.5.302` | `1.5.349` |\n| [enhanced-resolve](https://github.com/webpack/enhanced-resolve) | `5.20.0` | `5.21.0` |\n| [entities](https://github.com/fb55/entities) | `6.0.1` | `8.0.0` |\n| [es-abstract](https://github.com/ljharb/es-abstract) | `1.24.1` | `1.24.2` |\n| [es-iterator-helpers](https://github.com/es-shims/iterator-helpers) | `1.2.2` | `1.3.2` |\n| [es-module-lexer](https://github.com/guybedford/es-module-lexer) | `1.7.0` | `2.1.0` |\n| [espree](https://github.com/eslint/js/tree/HEAD/packages/espree) | `10.4.0` | `11.2.0` |\n| [get-tsconfig](https://github.com/privatenumber/get-tsconfig) | `4.13.6` | `4.14.0` |\n| [giget](https://github.com/unjs/giget) | `2.0.0` | `3.2.0` |\n| [hasown](https://github.com/inspect-js/hasOwn) | `2.0.2` | `2.0.3` |\n| [is-interactive](https://github.com/sindresorhus/is-interactive) | `1.0.0` | `2.0.0` |\n| [is-unicode-supported](https://github.com/sindresorhus/is-unicode-supported) | `0.1.0` | `2.1.0` |\n| [isbot](https://github.com/omrilotan/isbot) | `5.1.35` | `5.1.39` |\n| [libphonenumber-js](https://gitlab.com/catamphetamine/libphonenumber-js) | `1.12.38` | `1.12.42` |\n| [libsql](https://github.com/tursodatabase/libsql-js) | `0.5.22` | `0.5.29` |\n| [lightningcss](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-android-arm64](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-darwin-arm64](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-darwin-x64](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-freebsd-x64](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-linux-arm-gnueabihf](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-linux-arm64-gnu](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-linux-arm64-musl](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-linux-x64-gnu](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-linux-x64-musl](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-win32-arm64-msvc](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [lightningcss-win32-x64-msvc](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [log-symbols](https://github.com/sindresorhus/log-symbols) | `4.1.0` | `7.0.1` |\n| [mdn-data](https://github.com/mdn/data) | `2.12.2` | `2.27.1` |\n| [minipass](https://github.com/isaacs/minipass) | `3.3.6` | `7.1.3` |\n| [motion-dom](https://github.com/motiondivision/motion) | `12.35.2` | `12.38.0` |\n| [motion-utils](https://github.com/motiondivision/motion) | `12.29.2` | `12.36.0` |\n| [nanoid](https://github.com/ai/nanoid) | `3.3.11` | `3.3.12` |\n| [node-abi](https://github.com/electron/node-abi) | `4.26.0` | `4.29.0` |\n| [node-gyp](https://github.com/nodejs/node-gyp) | `11.5.0` | `12.3.0` |\n| [node-releases](https://github.com/chicoxyzzy/node-releases) | `2.0.27` | `2.0.38` |\n| [nopt](https://github.com/npm/nopt) | `8.1.0` | `9.0.0` |\n| [onetime](https://github.com/sindresorhus/onetime) | `5.1.2` | `7.0.0` |\n| [ora](https://github.com/sindresorhus/ora) | `5.4.1` | `9.4.0` |\n| [restore-cursor](https://github.com/sindresorhus/restore-cursor) | `3.1.0` | `5.1.0` |\n| [parse5](https://github.com/inikulin/parse5) | `8.0.0` | `8.0.1` |\n| [pkg-types](https://github.com/unjs/pkg-types) | `2.3.0` | `2.3.1` |\n| [postcss](https://github.com/postcss/postcss) | `8.5.6` | `8.5.13` |\n| [proc-log](https://github.com/npm/proc-log) | `5.0.0` | `6.1.0` |\n| [rc9](https://github.com/unjs/rc9) | `2.1.2` | `3.0.1` |\n| [safe-array-concat](https://github.com/ljharb/safe-array-concat) | `1.1.3` | `1.1.4` |\n| [sanitize-filename](https://github.com/parshap/node-sanitize-filename) | `1.6.3` | `1.6.4` |\n| [sax](https://github.com/isaacs/sax-js) | `1.4.4` | `1.6.0` |\n| [seroval](https://github.com/lxsmnsyc/seroval) | `1.5.0` | `1.5.2` |\n| [seroval-plugins](https://github.com/lxsmnsyc/seroval) | `1.5.0` | `1.5.2` |\n| [side-channel-list](https://github.com/ljharb/side-channel-list) | `1.0.0` | `1.0.1` |\n| [std-env](https://github.com/unjs/std-env) | `3.10.0` | `4.1.0` |\n| [tapable](https://github.com/webpack/tapable) | `2.3.0` | `2.3.3` |\n| [tar-stream](https://github.com/mafintosh/tar-stream) | `3.1.8` | `3.2.0` |\n| [tinyexec](https://github.com/tinylibs/tinyexec) | `1.0.2` | `1.1.2` |\n| [tinyglobby](https://github.com/SuperchupuDev/tinyglobby) | `0.2.15` | `0.2.16` |\n| [tinyrainbow](https://github.com/tinylibs/tinyrainbow) | `3.0.3` | `3.1.0` |\n| [tldts](https://github.com/remusao/tldts) | `7.0.23` | `7.0.30` |\n| [tldts-core](https://github.com/remusao/tldts) | `7.0.23` | `7.0.30` |\n| [tough-cookie](https://github.com/salesforce/tough-cookie) | `6.0.0` | `6.0.1` |\n| [ts-api-utils](https://github.com/JoshuaKGoldberg/ts-api-utils) | `2.4.0` | `2.5.0` |\n| [unplugin](https://github.com/unjs/unplugin) | `2.3.11` | `3.0.0` |\n| [validator](https://github.com/validatorjs/validator.js) | `13.15.26` | `13.15.35` |\n| [ws](https://github.com/websockets/ws) | `8.19.0` | `8.20.0` |\n| [yaml](https://github.com/eemeli/yaml) | `2.8.3` | `2.8.4` |\n\nUpdates `@hey-api/openapi-ts` from 0.94.0 to 0.97.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hey-api/openapi-ts/releases\"\u003e@​hey-api/openapi-ts's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003e@​hey-api/openapi-ts\u003c/code\u003e\u003ca href=\"https://github.com/0\"\u003e\u003ccode\u003e@​0\u003c/code\u003e\u003c/a\u003e.95.0\u003c/h2\u003e\n\u003ch3\u003eMinor Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eplugin(valibot)\u003c/strong\u003e: remove request data schema (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3671\"\u003e#3671\u003c/a\u003e) (\u003ca href=\"https://github.com/hey-api/openapi-ts/commit/96f60adb6af144e39133884e97e74a6693b6c059\"\u003e\u003ccode\u003e96f60ad\u003c/code\u003e\u003c/a\u003e) by \u003ca href=\"https://github.com/mrlubos\"\u003e\u003ccode\u003e@​mrlubos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eValidator request schemas\u003c/h3\u003e\n\u003cp\u003eValibot plugin no longer exports composite request \u003ccode\u003eData\u003c/code\u003e schemas. Instead, each layer is exported as a separate schema. If you're using validators with SDKs, you can preserve the composite schema with \u003ccode\u003eshouldExtract\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eexport default {\n  input: \u0026quot;hey-api/backend\u0026quot;, // sign up at app.heyapi.dev\n  output: \u0026quot;src/client\u0026quot;,\n  plugins: [\n    // ...other plugins\n    {\n      name: \u0026quot;sdk\u0026quot;,\n      validator: \u0026quot;valibot\u0026quot;,\n    },\n    {\n      name: \u0026quot;valibot\u0026quot;,\n      requests: {\n        shouldExtract: true,\n      },\n    },\n  ],\n};\n\u003c/code\u003e\u003c/pre\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003einternal\u003c/strong\u003e: remove \u003ccode\u003eplugin.getSymbol()\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3671\"\u003e#3671\u003c/a\u003e) (\u003ca href=\"https://github.com/hey-api/openapi-ts/commit/96f60adb6af144e39133884e97e74a6693b6c059\"\u003e\u003ccode\u003e96f60ad\u003c/code\u003e\u003c/a\u003e) by \u003ca href=\"https://github.com/mrlubos\"\u003e\u003ccode\u003e@​mrlubos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved \u003ccode\u003eplugin.getSymbol()\u003c/code\u003e function\u003c/h3\u003e\n\u003cp\u003eThis function has been removed. You can use \u003ccode\u003eplugin.querySymbol()\u003c/code\u003e instead. It accepts the same arguments and returns the same result.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eplugin(zod)\u003c/strong\u003e: remove request data schema (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3671\"\u003e#3671\u003c/a\u003e) (\u003ca href=\"https://github.com/hey-api/openapi-ts/commit/96f60adb6af144e39133884e97e74a6693b6c059\"\u003e\u003ccode\u003e96f60ad\u003c/code\u003e\u003c/a\u003e) by \u003ca href=\"https://github.com/mrlubos\"\u003e\u003ccode\u003e@​mrlubos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eValidator request schemas\u003c/h3\u003e\n\u003cp\u003eZod plugin no longer exports composite request \u003ccode\u003eData\u003c/code\u003e schemas. Instead, each layer is exported as a separate schema. If you're using validators with SDKs, you can preserve the composite schema with \u003ccode\u003eshouldExtract\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eexport default {\n  input: \u0026quot;hey-api/backend\u0026quot;, // sign up at app.heyapi.dev\n  output: \u0026quot;src/client\u0026quot;,\n  plugins: [\n    // ...other plugins\n    {\n      name: \u0026quot;sdk\u0026quot;,\n      validator: \u0026quot;zod\u0026quot;,\n\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hey-api/openapi-ts/blob/main/CHANGELOG.md\"\u003e@​hey-api/openapi-ts's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003ch1\u003e2026-04-28\u003c/h1\u003e\n\u003ch2\u003e\u003ccode\u003e@​hey-api/openapi-ts\u003c/code\u003e 0.97.0\u003c/h2\u003e\n\u003ch3\u003e⚠️ Breaking\u003c/h3\u003e\n\u003cp\u003eThis release has 15 breaking changes. Please review the release notes carefully before upgrading.\u003c/p\u003e\n\u003ch3\u003eUpdates\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecli: print file count and generator speed (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3828\"\u003e#3828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e client: resolve \u003ccode\u003eruntimeConfigPath\u003c/code\u003e relative to the output folder (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3770\"\u003e#3770\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged \u003ccode\u003eruntimeConfigPath\u003c/code\u003e behavior\u003c/h3\u003e\n\u003cp\u003eThis was a known, long-standing issue confusing first-time users. Before, defining client \u003ccode\u003eruntimeConfigPath\u003c/code\u003e value would paste it verbatim to the generated output. This release changes the behavior to resolve relative to the current working directory the same way output path works.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003econfig: remove \u003ccode\u003e--apply\u003c/code\u003e flag from Biome post-processor commands (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3812\"\u003e#3812\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePlugins\u003c/h3\u003e\n\u003ch4\u003e\u003ccode\u003e@​hey-api/client-angular\u003c/code\u003e\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e \u003ccode\u003erequest\u003c/code\u003e and \u003ccode\u003eresponse\u003c/code\u003e objects might be undefined (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e respect \u003ccode\u003ethrowOnError\u003c/code\u003e when request validation fails (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e\u003ccode\u003e@​hey-api/client-fetch\u003c/code\u003e\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e pass previous result to error interceptors (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e \u003ccode\u003erequest\u003c/code\u003e and \u003ccode\u003eresponse\u003c/code\u003e objects might be undefined (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e respect \u003ccode\u003ethrowOnError\u003c/code\u003e when request validation fails (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003e\u003ccode\u003e@​hey-api/client-ky\u003c/code\u003e\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e pass previous result to error interceptors (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e \u003ccode\u003erequest\u003c/code\u003e and \u003ccode\u003eresponse\u003c/code\u003e objects might be undefined (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e respect \u003ccode\u003ethrowOnError\u003c/code\u003e when request validation fails (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e respect ky instance defaults (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3806\"\u003e#3806\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged Ky client behavior\u003c/h3\u003e\n\u003cp\u003eThe Ky client was updated to be more intuitive. Some Ky options now need to be passed via the \u003ccode\u003ekyOptions\u003c/code\u003e field and you need to pass \u003ccode\u003eundefined\u003c/code\u003e to unset an option.\u003c/p\u003e\n\u003ch4\u003e\u003ccode\u003e@​hey-api/client-next\u003c/code\u003e\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e \u003ccode\u003erequest\u003c/code\u003e and \u003ccode\u003eresponse\u003c/code\u003e objects might be undefined (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e pass previous result to error interceptors (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚠️ Breaking:\u003c/strong\u003e respect \u003ccode\u003ethrowOnError\u003c/code\u003e when request validation fails (\u003ca href=\"https://redirect.github.com/hey-api/openapi-ts/pull/3814\"\u003e#3814\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\u003eSee full diff in \u003ca href=\"https://github.com/hey-api/openapi-ts/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@libsql/client` from 0.17.0 to 0.17.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/9d158a718ab655024e175d47a36565bd0178810b\"\u003e\u003ccode\u003e9d158a7\u003c/code\u003e\u003c/a\u003e 0.17.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/db7212640402f15e04b9fe7c16ca6cfa2b00ff07\"\u003e\u003ccode\u003edb72126\u003c/code\u003e\u003c/a\u003e 0.17.3-pre.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/e5d58414c671aabc88dfadf75fc1f3fd731da43d\"\u003e\u003ccode\u003ee5d5841\u003c/code\u003e\u003c/a\u003e Drop removed hrana-client re-exports from client test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/82b63c0466efc4435dfb05681988cb4656c86ed5\"\u003e\u003ccode\u003e82b63c0\u003c/code\u003e\u003c/a\u003e 0.17.3-pre.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/d377872e0ac42c7022d27b637815269fff8be6d1\"\u003e\u003ccode\u003ed377872\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003e@​libsql/hrana-client\u003c/code\u003e to 0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/697ae59038dc61224c1b3cf57b0d5a71b315ca5a\"\u003e\u003ccode\u003e697ae59\u003c/code\u003e\u003c/a\u003e 0.17.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/b15a87226612dad953f56d2dee10f811137ead92\"\u003e\u003ccode\u003eb15a872\u003c/code\u003e\u003c/a\u003e Bump libsql dependency\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/1fede76c2ffa109a67a20e8a73d366a9fba538c2\"\u003e\u003ccode\u003e1fede76\u003c/code\u003e\u003c/a\u003e 0.17.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/8f1e8d386e95f98891af56283a731261224c43ca\"\u003e\u003ccode\u003e8f1e8d3\u003c/code\u003e\u003c/a\u003e Bump libsql dependency\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commit/138f4a3c334f6031d372e46f29409c8384c6f4e6\"\u003e\u003ccode\u003e138f4a3\u003c/code\u003e\u003c/a\u003e Mention Turso serverless package\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tursodatabase/libsql-client-ts/commits/v0.17.3/packages/libsql-client\"\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.5 to 6.0.1\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.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\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003emacro:\u003c/strong\u003e add optional configurable JSX placeholder naming (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2505\"\u003e#2505\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eloader:\u003c/strong\u003e make webpack peer dependency optional and update Rspack example (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2475\"\u003e#2475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epo-format:\u003c/strong\u003e remove duplicated references when \u003ccode\u003elineNumbers\u003c/code\u003e is false (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2509\"\u003e#2509\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecli:\u003c/strong\u003e support braces in catalog pathname (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2495\"\u003e#2495\u003c/a\u003e) \u003cem\u003e(backported from v5.x)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDiscussion\u003c/h2\u003e\n\u003cp\u003eVisit the \u003ca href=\"https://github.com/lingui/js-lingui/discussions/2455\"\u003erelated discussion\u003c/a\u003e if you have any questions about this release or feedback. We'd love to hear from you!\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/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\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\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/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\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/2848e873f73b76c12b8aec6e672712d236c85b27\"\u003e\u003ccode\u003e2848e87\u003c/code\u003e\u003c/a\u003e fix(macro): add shims for macro executed in nodejs without transpilation (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2471\"\u003e#2471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/c3247d657e6010b4da3c53e83079902a2e83abb8\"\u003e\u003ccode\u003ec3247d6\u003c/code\u003e\u003c/a\u003e chore: fix eslint config for react (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/core/issues/2449\"\u003e#2449\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lingui/js-lingui/commits/v6.0.1/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.5 to 6.0.1\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.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\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003emacro:\u003c/strong\u003e add optional configurable JSX placeholder naming (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2505\"\u003e#2505\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eloader:\u003c/strong\u003e make webpack peer dependency optional and update Rspack example (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2475\"\u003e#2475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003epo-format:\u003c/strong\u003e remove duplicated references when \u003ccode\u003elineNumbers\u003c/code\u003e is false (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2509\"\u003e#2509\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ecli:\u003c/strong\u003e support braces in catalog pathname (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2495\"\u003e#2495\u003c/a\u003e) \u003cem\u003e(backported from v5.x)\u003c/em\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDiscussion\u003c/h2\u003e\n\u003cp\u003eVisit the \u003ca href=\"https://github.com/lingui/js-lingui/discussions/2455\"\u003erelated discussion\u003c/a\u003e if you have any questions about this release or feedback. We'd love to hear from you!\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/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\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\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/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\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/2848e873f73b76c12b8aec6e672712d236c85b27\"\u003e\u003ccode\u003e2848e87\u003c/code\u003e\u003c/a\u003e fix(macro): add shims for macro executed in nodejs without transpilation (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2471\"\u003e#2471\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lingui/js-lingui/commit/c3247d657e6010b4da3c53e83079902a2e83abb8\"\u003e\u003ccode\u003ec3247d6\u003c/code\u003e\u003c/a\u003e chore: fix eslint config for react (\u003ca href=\"https://github.com/lingui/js-lingui/tree/HEAD/packages/react/issues/2449\"\u003e#2449\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lingui/js-lingui/commits/v6.0.1/packages/react\"\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.99.1 to 2.105.1\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.105.1\u003c/h2\u003e\n\u003ch2\u003e2.105.1 (2026-04-28)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003epostgrest:\u003c/strong\u003e query reassignment regression (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2292\"\u003e#2292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erealtime:\u003c/strong\u003e surface real Error on transport-level CHANNEL_ERROR (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2299\"\u003e#2299\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\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.105.1-canary.2\u003c/h2\u003e\n\u003ch2\u003e2.105.1-canary.2 (2026-04-28)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003erealtime:\u003c/strong\u003e surface real Error on transport-level CHANNEL_ERROR (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2299\"\u003e#2299\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.105.1-canary.1\u003c/h2\u003e\n\u003ch2\u003e2.105.1-canary.1 (2026-04-28)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only, there were no code changes.\u003c/p\u003e\n\u003ch2\u003ev2.105.1-canary.0\u003c/h2\u003e\n\u003ch2\u003e2.105.1-canary.0 (2026-04-28)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003epostgrest:\u003c/strong\u003e query reassignment regression (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2292\"\u003e#2292\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\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.105.0\u003c/h2\u003e\n\u003ch2\u003e2.105.0 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eauth:\u003c/strong\u003e add passkey support with WebAuthn registration, authentication, and management (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2283\"\u003e#2283\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erealtime:\u003c/strong\u003e Realtime deferred disconnect (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2282\"\u003e#2282\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003epostgrest:\u003c/strong\u003e narrow column types after not(column, is, null) (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2264\"\u003e#2264\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erealtime:\u003c/strong\u003e annotate Timer/Vsn getters to avoid deep phoenix imports (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2284\"\u003e#2284\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003estorage:\u003c/strong\u003e apply metadata, headers, and cacheControl dedupe to uploadToSignedUrl (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2275\"\u003e#2275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003estorage:\u003c/strong\u003e forward duplex option for stream uploads via uploadToSignedUrl (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2289\"\u003e#2289\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/supabase/supabase-js/blob/develop/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.105.1 (2026-04-28)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.105.0 (2026-04-27)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eauth:\u003c/strong\u003e add passkey support with WebAuthn registration, authentication, and management (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2283\"\u003e#2283\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003erealtime:\u003c/strong\u003e Realtime deferred disconnect (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2282\"\u003e#2282\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.104.1 (2026-04-23)\u003c/h2\u003e\n\u003ch3\u003e🩹 Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003esupabase:\u003c/strong\u003e propagate custom fetch to realtime client (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2267\"\u003e#2267\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.104.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.103.3 (2026-04-16)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.103.2 (2026-04-15)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.103.1 (2026-04-15)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.103.0 (2026-04-09)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.102.1 (2026-04-07)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for \u003ccode\u003e@​supabase/supabase-js\u003c/code\u003e to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003ch2\u003e2.102.0 (2026-04-07)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003esupabase:\u003c/strong\u003e export PostgrestFilterBuilder and StorageApiError from supabase-js (\u003ca href=\"https://redirect.github.com/supabase/supabase-js/pull/2222\"\u003e#2222\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/supabase/supabase-js/commit/ca8c418dbe912a72d6c6434c319d432d31867943\"\u003e\u003ccode\u003eca8c418\u003c/code\u003e\u003c/a\u003e chore(release): version 2.105.0 changelogs (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2290\"\u003e#2290\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/d19e6d3f8f7344205175034146ce61548d415837\"\u003e\u003ccode\u003ed19e6d3\u003c/code\u003e\u003c/a\u003e [patchback] docs(misc): rename anon key → publishable key and service role ke...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/c420456290b0eccf34a2eb5625294752b52e26d4\"\u003e\u003ccode\u003ec420456\u003c/code\u003e\u003c/a\u003e [patchback] feat(auth): add passkey support with WebAuthn registration, authe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/bfb18bc82f452bf6987886ffbbe6a974496bf88d\"\u003e\u003ccode\u003ebfb18bc\u003c/code\u003e\u003c/a\u003e [patchback] feat(realtime): Realtime deferred disconnect (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2282\"\u003e#2282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/ed49eed13592a7c874ec799d6aa8ff7b675aa929\"\u003e\u003ccode\u003eed49eed\u003c/code\u003e\u003c/a\u003e chore(release): version 2.104.1 changelogs (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2273\"\u003e#2273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/122d3a94cce7b4a4b7e340779c8f82bac99ff1b3\"\u003e\u003ccode\u003e122d3a9\u003c/code\u003e\u003c/a\u003e fix(supabase): propagate custom fetch to realtime client (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2267\"\u003e#2267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/9360d4ae2797d25d6b53d5c6c99981d2a814f26b\"\u003e\u003ccode\u003e9360d4a\u003c/code\u003e\u003c/a\u003e chore(release): version 2.104.0 changelogs (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2261\"\u003e#2261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/897fb8e9d288e74dd47e765b5d6ec647e765a3cb\"\u003e\u003ccode\u003e897fb8e\u003c/code\u003e\u003c/a\u003e docs(repo): show createClient as primary example in all client constructors (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/7a9b2e15031253b542dc3c2294e41c818b61509d\"\u003e\u003ccode\u003e7a9b2e1\u003c/code\u003e\u003c/a\u003e chore(release): version 2.103.3 changelogs (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2258\"\u003e#2258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/supabase/supabase-js/commit/a2f94144fae2a4a5dc713cb71dbcce46ad3e92f0\"\u003e\u003ccode\u003ea2f9414\u003c/code\u003e\u003c/a\u003e chore(release): version 2.103.2 changelogs (\u003ca href=\"https://github.com/supabase/supabase-js/tree/HEAD/packages/core/supabase-js/issues/2253\"\u003e#2253\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/supabase/supabase-js/commits/v2.105.1/packages/core/supabase-js\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/vite` from 4.2.1 to 4.2.4\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.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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.2\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Vite 8 in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19790\"\u003e#19790\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDon't crash when candidates contain prototype properties like \u003ccode\u003erow-constructor\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19725\"\u003e#19725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalize \u003ccode\u003ecalc(var(--spacing)*…)\u003c/code\u003e expressions into \u003ccode\u003e--spacing(…)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19769\"\u003e#19769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash in canonicalization step when handling utilities containing \u003ccode\u003e@property\u003c/code\u003e at-rules (e.g. \u003ccode\u003eshadow-sm border\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19727\"\u003e#19727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip full reload for server only modules scanned by client CSS when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19745\"\u003e#19745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove canonicalization for bare values exceeding default spacing scale suggestions (e.g. \u003ccode\u003ew-1234 h-1234\u003c/code\u003e → \u003ccode\u003esize-1234\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19809\"\u003e#19809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix canonicalization resulting in empty list (e.g. \u003ccode\u003ew-5 h-5 size-5\u003c/code\u003e → \u003ccode\u003e''\u003c/code\u003e instead of \u003ccode\u003esize-5\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19812\"\u003e#19812\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/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.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\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.2] - 2026-03-18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3...\n\n_Description has been truncated_","html_url":"https://github.com/FapLandPartyDev/FapLand-Party-Edition/pull/18","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/FapLandPartyDev%2FFapLand-Party-Edition/issues/18","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/18/packages"}},{"old_version":"4.2.3","new_version":"4.2.4","update_type":"patch","path":null,"pr_created_at":"2026-05-04T00:36:09.000Z","version_change":"4.2.3 → 4.2.4","issue":{"uuid":"4373416126","node_id":"PR_kwDOKznqAc7X2LVj","number":270,"state":"closed","title":"chore(deps): bump the production-dependencies group across 1 directory with 4 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-05T03:14:45.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-04T00:36:09.000Z","updated_at":"2026-05-05T03:14:47.000Z","time_to_close":95916,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"production-dependencies","update_count":4,"packages":[{"name":"@tailwindcss/vite","old_version":"4.2.3","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"starlight-versions","old_version":"0.8.1","new_version":"0.8.2","repository_url":"https://github.com/HiDeoo/starlight-versions"},{"name":"tailwindcss","old_version":"4.2.3","new_version":"4.2.4"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.3","new_version":"4.2.4"}],"path":null,"ecosystem":"npm"},"body":"Bumps the production-dependencies group with 2 updates in the / directory: [@tailwindcss/vite](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite) and [starlight-versions](https://github.com/HiDeoo/starlight-versions/tree/HEAD/packages/starlight-versions).\n\nUpdates `@tailwindcss/vite` from 4.2.3 to 4.2.4\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.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\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/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.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\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/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\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/packages/@tailwindcss-vite\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `starlight-versions` from 0.8.1 to 0.8.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/HiDeoo/starlight-versions/releases\"\u003estarlight-versions's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003estarlight-versions@0.8.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/HiDeoo/starlight-versions/pull/64\"\u003e#64\u003c/a\u003e \u003ca href=\"https://github.com/HiDeoo/starlight-versions/commit/5e262755d6b8f61ba4c17f59f32ff0fa0ff87938\"\u003e\u003ccode\u003e5e26275\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Hexalyse\"\u003e\u003ccode\u003e@​Hexalyse\u003c/code\u003e\u003c/a\u003e! - Fixes a Windows-only issue where archived docs could generate incorrect routes.\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/HiDeoo/starlight-versions/blob/main/packages/starlight-versions/CHANGELOG.md\"\u003estarlight-versions's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.8.2\u003c/h2\u003e\n\u003ch3\u003ePatch Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/HiDeoo/starlight-versions/pull/64\"\u003e#64\u003c/a\u003e \u003ca href=\"https://github.com/HiDeoo/starlight-versions/commit/5e262755d6b8f61ba4c17f59f32ff0fa0ff87938\"\u003e\u003ccode\u003e5e26275\u003c/code\u003e\u003c/a\u003e Thanks \u003ca href=\"https://github.com/Hexalyse\"\u003e\u003ccode\u003e@​Hexalyse\u003c/code\u003e\u003c/a\u003e! - Fixes a Windows-only issue where archived docs could generate incorrect routes.\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/HiDeoo/starlight-versions/commit/3c7db4fbf5dbac544d69015ec508c43ea127c26a\"\u003e\u003ccode\u003e3c7db4f\u003c/code\u003e\u003c/a\u003e ci: release (\u003ca href=\"https://github.com/HiDeoo/starlight-versions/tree/HEAD/packages/starlight-versions/issues/67\"\u003e#67\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/HiDeoo/starlight-versions/commit/5e262755d6b8f61ba4c17f59f32ff0fa0ff87938\"\u003e\u003ccode\u003e5e26275\u003c/code\u003e\u003c/a\u003e Fix Windows path separator issue with i18n versioned content (\u003ca href=\"https://github.com/HiDeoo/starlight-versions/tree/HEAD/packages/starlight-versions/issues/64\"\u003e#64\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/HiDeoo/starlight-versions/commits/starlight-versions@0.8.2/packages/starlight-versions\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tailwindcss` from 4.2.3 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003etailwindcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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/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/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/packages/tailwindcss\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.3 to 4.2.4\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/oxide-linux-x64-gnu's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e@​tailwindcss/oxide-linux-x64-gnu's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/defenseunicorns/pepr-docs/pull/270","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/defenseunicorns%2Fpepr-docs/issues/270","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/270/packages"}},{"old_version":"4.2.2","new_version":"4.2.4","update_type":"patch","path":"the npm-minor-patch group","pr_created_at":"2026-04-27T12:09:17.000Z","version_change":"4.2.2 → 4.2.4","issue":{"uuid":"4335607016","node_id":"PR_kwDORPmCMc7V8-_6","number":55,"state":"closed","title":"chore(deps): bump @tailwindcss/oxide-linux-x64-gnu from 4.2.2 to 4.2.4 in the npm-minor-patch group","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-04T12:37:07.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-27T12:09:17.000Z","updated_at":"2026-05-04T12:37:09.000Z","time_to_close":606470,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":"the npm-minor-patch group","ecosystem":"npm"},"body":"Bumps the npm-minor-patch group with 1 update: [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu).\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.2.2\u0026new-version=4.2.4)](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 \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/binarygary/gratitude/pull/55","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/binarygary%2Fgratitude/issues/55","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/55/packages"}},{"old_version":"4.2.1","new_version":"4.2.4","update_type":"patch","path":null,"pr_created_at":"2026-04-27T03:17:27.000Z","version_change":"4.2.1 → 4.2.4","issue":{"uuid":"4332865868","node_id":"PR_kwDORqB-ZM7Vz-2X","number":64,"state":"closed","title":"chore: bump the workspace-non-fast group across 1 directory with 17 updates","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-11T03:21:02.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-27T03:17:27.000Z","updated_at":"2026-05-11T03:21:04.000Z","time_to_close":1209815,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore: bump","group_name":"workspace-non-fast","update_count":17,"packages":[{"name":"ajv","old_version":"8.18.0","new_version":"8.20.0","repository_url":"https://github.com/ajv-validator/ajv"},{"name":"dotenv","old_version":"17.3.1","new_version":"17.4.2","repository_url":"https://github.com/motdotla/dotenv"},{"name":"zod-to-json-schema","old_version":"3.25.1","new_version":"3.25.2","repository_url":"https://github.com/StefanTerdell/zod-to-json-schema"},{"name":"@playwright/test","old_version":"1.58.2","new_version":"1.59.1","repository_url":"https://github.com/microsoft/playwright"},{"name":"@types/node","old_version":"25.5.0","new_version":"25.6.0","repository_url":"https://github.com/DefinitelyTyped/DefinitelyTyped"},{"name":"jsdom","old_version":"29.0.1","new_version":"29.1.0","repository_url":"https://github.com/jsdom/jsdom"},{"name":"@esbuild/linux-x64","old_version":"0.27.4","new_version":"0.28.0","repository_url":"https://github.com/evanw/esbuild"},{"name":"@next/swc-linux-x64-gnu","old_version":"16.2.1","new_version":"16.2.4","repository_url":"https://github.com/vercel/next.js"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.1","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@rollup/rollup-linux-x64-gnu","old_version":"4.60.0","new_version":"4.60.2","repository_url":"https://github.com/rollup/rollup"},{"name":"lightningcss-linux-x64-gnu","old_version":"1.31.1","new_version":"1.32.0","repository_url":"https://github.com/parcel-bundler/lightningcss"},{"name":"@tailwindcss/postcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"next","old_version":"16.2.1","new_version":"16.2.4","repository_url":"https://github.com/vercel/next.js"},{"name":"react","old_version":"19.2.4","new_version":"19.2.5","repository_url":"https://github.com/facebook/react"},{"name":"react-dom","old_version":"19.2.4","new_version":"19.2.5","repository_url":"https://github.com/facebook/react"},{"name":"@modelcontextprotocol/sdk","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/modelcontextprotocol/typescript-sdk"}],"path":null,"ecosystem":"npm"},"body":"Bumps the workspace-non-fast group with 16 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [ajv](https://github.com/ajv-validator/ajv) | `8.18.0` | `8.20.0` |\n| [dotenv](https://github.com/motdotla/dotenv) | `17.3.1` | `17.4.2` |\n| [zod-to-json-schema](https://github.com/StefanTerdell/zod-to-json-schema) | `3.25.1` | `3.25.2` |\n| [@playwright/test](https://github.com/microsoft/playwright) | `1.58.2` | `1.59.1` |\n| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.5.0` | `25.6.0` |\n| [jsdom](https://github.com/jsdom/jsdom) | `29.0.1` | `29.1.0` |\n| [@esbuild/linux-x64](https://github.com/evanw/esbuild) | `0.27.4` | `0.28.0` |\n| [@next/swc-linux-x64-gnu](https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu) | `16.2.1` | `16.2.4` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.1` | `4.2.4` |\n| [@rollup/rollup-linux-x64-gnu](https://github.com/rollup/rollup) | `4.60.0` | `4.60.2` |\n| [lightningcss-linux-x64-gnu](https://github.com/parcel-bundler/lightningcss) | `1.31.1` | `1.32.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.2` | `4.2.4` |\n| [next](https://github.com/vercel/next.js) | `16.2.1` | `16.2.4` |\n| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.2.4` | `19.2.5` |\n| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.2.4` | `19.2.5` |\n| [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk) | `1.28.0` | `1.29.0` |\n\n\nUpdates `ajv` from 8.18.0 to 8.20.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ajv-validator/ajv/releases\"\u003eajv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.20.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: add support for node 22/24, drop node 16/21 by \u003ca href=\"https://github.com/jasoniangreen\"\u003e\u003ccode\u003e@​jasoniangreen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/ajv-validator/ajv/pull/2580\"\u003eajv-validator/ajv#2580\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: add ES2022.RegExp for RegExpIndicesArray by \u003ca href=\"https://github.com/SignpostMarv\"\u003e\u003ccode\u003e@​SignpostMarv\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/ajv-validator/ajv/pull/2604\"\u003eajv-validator/ajv#2604\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/ajv-validator/ajv/compare/v8.19.0...v8.20.0\"\u003ehttps://github.com/ajv-validator/ajv/compare/v8.19.0...v8.20.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev8.19.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix prototype pollution via format keyword using $data ref by \u003ca href=\"https://github.com/epoberezkin\"\u003e\u003ccode\u003e@​epoberezkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/ajv-validator/ajv/pull/2607\"\u003eajv-validator/ajv#2607\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/ajv-validator/ajv/compare/v8.18.0...v8.19.0\"\u003ehttps://github.com/ajv-validator/ajv/compare/v8.18.0...v8.19.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/ajv-validator/ajv/commit/0fba0b8e649909613cfce0999b149cd08f4a4987\"\u003e\u003ccode\u003e0fba0b8\u003c/code\u003e\u003c/a\u003e 8.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ajv-validator/ajv/commit/9caf8d64409b05e2c670b3ff09cf7ca07937342e\"\u003e\u003ccode\u003e9caf8d6\u003c/code\u003e\u003c/a\u003e fix: add ES2022.RegExp for RegExpIndicesArray; fixes \u003ca href=\"https://redirect.github.com/ajv-validator/ajv/issues/2603\"\u003eajv-validator/ajv#2603\u003c/a\u003e (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ajv-validator/ajv/commit/206535071f776f57737394c8896d4b2dc2bfb9a3\"\u003e\u003ccode\u003e2065350\u003c/code\u003e\u003c/a\u003e fix: add support for node 22/24, drop node 16/21 (\u003ca href=\"https://redirect.github.com/ajv-validator/ajv/issues/2580\"\u003e#2580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ajv-validator/ajv/commit/154b58d690c6596e09ca676e12720ab8234ee3d2\"\u003e\u003ccode\u003e154b58d\u003c/code\u003e\u003c/a\u003e 8.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ajv-validator/ajv/commit/e8d2bdc501b3ba6f03922db5e595770d4763d9da\"\u003e\u003ccode\u003ee8d2bdc\u003c/code\u003e\u003c/a\u003e test/fix prototype pollution via $data ref with format keyword (\u003ca href=\"https://redirect.github.com/ajv-validator/ajv/issues/2607\"\u003e#2607\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/ajv-validator/ajv/compare/v8.18.0...v8.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dotenv` from 17.3.1 to 17.4.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md\"\u003edotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/motdotla/dotenv/compare/v17.4.1...v17.4.2\"\u003e17.4.2\u003c/a\u003e (2026-04-12)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved skill files - tightened up details (\u003ca href=\"https://redirect.github.com/motdotla/dotenv/pull/1009\"\u003e#1009\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/motdotla/dotenv/compare/v17.4.0...v17.4.1\"\u003e17.4.1\u003c/a\u003e (2026-04-05)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChange text \u003ccode\u003einjecting\u003c/code\u003e to \u003ccode\u003einjected\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/motdotla/dotenv/pull/1005\"\u003e#1005\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/motdotla/dotenv/compare/v17.3.1...v17.4.0\"\u003e17.4.0\u003c/a\u003e (2026-04-01)\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eskills/\u003c/code\u003e folder with focused agent skills: \u003ccode\u003eskills/dotenv/SKILL.md\u003c/code\u003e (core usage) and \u003ccode\u003eskills/dotenvx/SKILL.md\u003c/code\u003e (encryption, multiple environments, variable expansion) for AI coding agent discovery via the skills.sh ecosystem (\u003ccode\u003enpx skills add motdotla/dotenv\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eTighten up logs: \u003ccode\u003e◇ injecting env (14) from .env\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/motdotla/dotenv/pull/1003\"\u003e#1003\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/motdotla/dotenv/commit/f116f70310abab44fbfddbaeb833698b5bf84a9b\"\u003e\u003ccode\u003ef116f70\u003c/code\u003e\u003c/a\u003e 17.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/3a8161274fdd745239b86e604f4a7e972a1d3902\"\u003e\u003ccode\u003e3a81612\u003c/code\u003e\u003c/a\u003e fix visual order of faq\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/13f55a89e136b2024e68d277b836dd5260fc16cf\"\u003e\u003ccode\u003e13f55a8\u003c/code\u003e\u003c/a\u003e Merge branch 'skill'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/4bbbf73f0906bd69975c48bf310a84b686e5b1b4\"\u003e\u003ccode\u003e4bbbf73\u003c/code\u003e\u003c/a\u003e reorganize faq\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/c3da64bb2ba1d0e02f8b9b2b7ccb7e6f7a51d56c\"\u003e\u003ccode\u003ec3da64b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/motdotla/dotenv/issues/1009\"\u003e#1009\u003c/a\u003e from motdotla/skill\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/6f743b173fbd6c26f7eab7040d251f9a6c8b977d\"\u003e\u003ccode\u003e6f743b1\u003c/code\u003e\u003c/a\u003e update source\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/fc2c6247e858a32d4024cb06a5b0c79aa35851f5\"\u003e\u003ccode\u003efc2c624\u003c/code\u003e\u003c/a\u003e update skill\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/972315ba74bb2bbba4483d112e853fd26006ef8a\"\u003e\u003ccode\u003e972315b\u003c/code\u003e\u003c/a\u003e Tighten up skill\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/2795fce3d1ed07b4c570f1e06ab1c0d533c86997\"\u003e\u003ccode\u003e2795fce\u003c/code\u003e\u003c/a\u003e reorganize faq\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/motdotla/dotenv/commit/d5495d4ae8e4e41ef9a682c9e00c81552794274e\"\u003e\u003ccode\u003ed5495d4\u003c/code\u003e\u003c/a\u003e adjust skill\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/motdotla/dotenv/compare/v17.3.1...v17.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `zod-to-json-schema` from 3.25.1 to 3.25.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/StefanTerdell/zod-to-json-schema/blob/master/changelog.md\"\u003ezod-to-json-schema's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eVersion\u003c/th\u003e\n\u003cth\u003eChange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.25.2\u003c/td\u003e\n\u003ctd\u003eBumps the peer dependency of Zod 3 to 3.25.28 - Versions before patch 13 caused \u003ca href=\"https://redirect.github.com/StefanTerdell/zod-to-json-schema/issues/185\"\u003eOOM issues\u003c/a\u003e and versions between that and 28 removed the /v3 import alias.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.25.1\u003c/td\u003e\n\u003ctd\u003eFixes large install size due to accidental inclusion of test files. Thanks, \u003ca href=\"https://github.com/felixmosh\"\u003eFelix Mosheev\u003c/a\u003e!\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.25.0\u003c/td\u003e\n\u003ctd\u003eAdds support for v3.25 and v3 through v4 (\u003ccode\u003eimport { z } from \u0026quot;zod/v3\u0026quot;\u003c/code\u003e). Big thank you to both \u003ca href=\"https://github.com/finom\"\u003eAndrey Gubanovs\u003c/a\u003e and especially to \u003ca href=\"https://github.com/Abdillah\"\u003eFaïz Hernawan Abdillah\u003c/a\u003e, whose more minimal implementation was merged. This will likely be the final release of \u003ccode\u003ezod-to-json-schema\u003c/code\u003e, as v4 now supports JSON schema natively.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.6\u003c/td\u003e\n\u003ctd\u003eRemoved use of instanceOf to check for optional properties as differing package versions could produce intermittent bugs. Added OpenAiAnyType to work around their schema restrictions.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.5\u003c/td\u003e\n\u003ctd\u003eUpdate .npmignore to drop 2 mb of test files. Thanks \u003ca href=\"https://github.com/mmkal\"\u003eMisha Kaletsky\u003c/a\u003e!\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.4\u003c/td\u003e\n\u003ctd\u003eAdded options to set the value of additionalProperties in objects and record\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.3\u003c/td\u003e\n\u003ctd\u003eAdds postProcess callback option\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.2\u003c/td\u003e\n\u003ctd\u003eRestructured internals to remove circular dependencies which apparently might cause some build systems to whine a bit. Big thanks to \u003ca href=\"https://github.com/NanezX\"\u003eVíctor Hernández\u003c/a\u003e for the fix.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.1\u003c/td\u003e\n\u003ctd\u003eAdds OpenAI target\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.24.0\u003c/td\u003e\n\u003ctd\u003eImplements new string checks (jwt, base64url, cidr ipv4/v6), matching the new Zod version\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.5\u003c/td\u003e\n\u003ctd\u003eModule import hotfix by \u003ca href=\"https://github.com/enzomonjardin\"\u003eEnzo Monjardín\u003c/a\u003e. Thanks!\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.4\u003c/td\u003e\n\u003ctd\u003eFixes branded regex property names and a weird edgecase in arrays. Thanks to \u003ca href=\"https://github.com/imsanchez\"\u003eIsaiah Marc Sanchez\u003c/a\u003e and \u003ca href=\"https://github.com/mitchell-merry\"\u003eMitchell Merry\u003c/a\u003e!\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.3\u003c/td\u003e\n\u003ctd\u003eMore tests (Thanks \u003ca href=\"https://github.com/brettz9\"\u003eBrett Zamir!\u003c/a\u003e), removed dead code\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.2\u003c/td\u003e\n\u003ctd\u003eLazily loads Emoji regex to avoid incompatibility with some environments. Thanks \u003ca href=\"https://github.com/jacoblee93\"\u003eJacob Lee\u003c/a\u003e!\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.1\u003c/td\u003e\n\u003ctd\u003eBest-effort RegEx flag support by \u003ca href=\"https://github.com/Spappz\"\u003eSpappz\u003c/a\u003e! Some minor fixes and additions, such as the title option.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.23.0\u003c/td\u003e\n\u003ctd\u003eAdds support for base64, date, time, duration and nanoid string validations. A warm welcome and a big thanks to \u003ca href=\"https://www.github.com/colinhacks\"\u003eColin\u003c/a\u003e, the creator of Zod, joining in as a contributor :)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.5\u003c/td\u003e\n\u003ctd\u003eAdds new z.date() parsing options and override callback\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.4\u003c/td\u003e\n\u003ctd\u003eAdds fix for nullable references in OpenAPI mode\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.3\u003c/td\u003e\n\u003ctd\u003eAdjust root path from \u0026quot;#/\u0026quot; to \u0026quot;#\u0026quot; according to RFC 6901\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.2\u003c/td\u003e\n\u003ctd\u003eAdds \u0026quot;output\u0026quot; pipe strategy\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.1\u003c/td\u003e\n\u003ctd\u003eFixes broken imports when using some bundlers\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.22.0\u003c/td\u003e\n\u003ctd\u003eSupport readonly. Export both CJS and ESM. Export everything from index. Alternative map parser. Improved pattern handling and updated sources.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.21.4\u003c/td\u003e\n\u003ctd\u003eFixes missing support for exact array length\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.21.3\u003c/td\u003e\n\u003ctd\u003eFixes issue \u003ca href=\"https://redirect.github.com/StefanTerdell/zod-to-json-schema/issues/77\"\u003e#77\u003c/a\u003e (Reference path to nullable schemas in Open-API mode)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.21.2\u003c/td\u003e\n\u003ctd\u003eAdds \u0026quot;integer\u0026quot; type Date output to support min/max checks, markdownDescription option, fixes \u0026quot;none\u0026quot; refStrategy by adding \u0026quot;seen\u0026quot; and adds an option to use \u0026quot;pattern\u0026quot; with Zods' email enum instead of \u0026quot;format\u0026quot;.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.21.1\u003c/td\u003e\n\u003ctd\u003eNew target (2019-09) along with improved intersection schemas, improved mutual recursion references in definitions, descriptions respected in union parser and not removed in collapsed\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.21.0\u003c/td\u003e\n\u003ctd\u003eAdded new string validations (ip, emoji, etc) and BigInt checks to support Zod 3.21\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.5\u003c/td\u003e\n\u003ctd\u003eAdded uniqueItems to Set and an option to disregard pipe schemas\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.4\u003c/td\u003e\n\u003ctd\u003eBugfixes and improved record parsing for openApi3\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.3\u003c/td\u003e\n\u003ctd\u003eAdded Cuid2 support introduced in Zod 3.20.3\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.2\u003c/td\u003e\n\u003ctd\u003eReintroduced conditional simplified return-type for when target is OpenAPI 3\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.1\u003c/td\u003e\n\u003ctd\u003eFixed inconsistent casing in imports\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.20.0\u003c/td\u003e\n\u003ctd\u003eAdds support for Zod 3.20 with catch and pipe parser as well as new string validations. Refactored Ref handling; adding definitions no longer considered experimental. Main API function refactored and simplified; output type less defined but a lot easier to maintain. Doubt anyone will miss it. \u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003eNarrator: Someone did in fact miss it\u003c!-- raw HTML omitted --\u003e\u003c!-- raw HTML omitted --\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.19.4\u003c/td\u003e\n\u003ctd\u003eAdds custom error message support\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.19.3\u003c/td\u003e\n\u003ctd\u003eMark \u003ccode\u003edefinitions\u003c/code\u003e as experimental in the readme\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.19.2\u003c/td\u003e\n\u003ctd\u003eAdded \u003ccode\u003edefinitions\u003c/code\u003e option\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.19.1\u003c/td\u003e\n\u003ctd\u003eStrict unions fix\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.19.0\u003c/td\u003e\n\u003ctd\u003eNo new features added in Zod, parity bump\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.18.2\u003c/td\u003e\n\u003ctd\u003eFixes support for native enums\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.18.1\u003c/td\u003e\n\u003ctd\u003eAdd strictUnions options\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.18.0\u003c/td\u003e\n\u003ctd\u003eAdded support for branded types\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.17.2\u003c/td\u003e\n\u003ctd\u003eFix for reference paths when supplying name option string.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.17.1\u003c/td\u003e\n\u003ctd\u003eAdded startsWith and endsWith string checks. Merge multiple pattern checks into allOf array.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.17.0\u003c/td\u003e\n\u003ctd\u003eAdded switch case handler for new trim \u0026quot;check\u0026quot;. No changes to functionality.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.15.x - 3.16.x\u003c/td\u003e\n\u003ctd\u003eSkipped: Did not change the Zod API in any way relevant for this package.\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e3.14.1\u003c/td\u003e\n\u003ctd\u003eDependabot security updates\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/StefanTerdell/zod-to-json-schema/commits\"\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.59.1\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\u003ccode\u003e@​playwright/test\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.59.1\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e[Windows]\u003c/strong\u003e Reverted hiding console window when spawning browser processes, which caused regressions including broken \u003ccode\u003ecodegen\u003c/code\u003e, \u003ccode\u003e--ui\u003c/code\u003e and \u003ccode\u003eshow\u003c/code\u003e commands (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39990\"\u003e#39990\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.59.0\u003c/h2\u003e\n\u003ch2\u003e🎬 Screencast\u003c/h2\u003e\n\u003cp\u003eNew \u003ca href=\"https://playwright.dev/docs/api/class-page#page-screencast\"\u003epage.screencast\u003c/a\u003e API provides a unified interface for capturing page content with:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eScreencast recordings\u003c/li\u003e\n\u003cli\u003eAction annotations\u003c/li\u003e\n\u003cli\u003eVisual overlays\u003c/li\u003e\n\u003cli\u003eReal-time frame capture\u003c/li\u003e\n\u003cli\u003eAgentic video receipts\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003cstrong\u003eScreencast recording\u003c/strong\u003e — record video with precise start/stop control, as an alternative to the \u003ca href=\"https://playwright.dev/docs/api/class-browser#browser-new-context-option-record-video\"\u003e\u003ccode\u003erecordVideo\u003c/code\u003e\u003c/a\u003e option:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.screencast.start({ path: 'video.webm' });\r\n// ... perform actions ...\r\nawait page.screencast.stop();\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003cstrong\u003eAction annotations\u003c/strong\u003e — enable built-in visual annotations that highlight interacted elements and display action titles during recording:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eawait page.screencast.showActions({ position: 'top-right' });\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003ca href=\"https://playwright.dev/docs/api/class-screencast#screencast-show-actions\"\u003escreencast.showActions()\u003c/a\u003e accepts \u003ccode\u003eposition\u003c/code\u003e (\u003ccode\u003e'top-left'\u003c/code\u003e, \u003ccode\u003e'top'\u003c/code\u003e, \u003ccode\u003e'top-right'\u003c/code\u003e, \u003ccode\u003e'bottom-left'\u003c/code\u003e, \u003ccode\u003e'bottom'\u003c/code\u003e, \u003ccode\u003e'bottom-right'\u003c/code\u003e), \u003ccode\u003eduration\u003c/code\u003e (ms per annotation), and \u003ccode\u003efontSize\u003c/code\u003e (px). Returns a disposable to stop showing actions.\u003c/p\u003e\n\u003cp\u003eAction annotations can also be enabled in test fixtures via the \u003ccode\u003evideo\u003c/code\u003e option:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003e// playwright.config.ts\r\nexport default defineConfig({\r\n  use: {\r\n    video: {\r\n      mode: 'on',\r\n      show: {\r\n        actions: { position: 'top-left' },\r\n        test: { position: 'top-right' },\r\n      },\r\n\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/microsoft/playwright/commit/d466ac5358cae058cdc75d2ae3ab3ad220042730\"\u003e\u003ccode\u003ed466ac5\u003c/code\u003e\u003c/a\u003e chore: mark v1.59.1 (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/40005\"\u003e#40005\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/530e7e5f0021730948605a5788790d353d9cf444\"\u003e\u003ccode\u003e530e7e5\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/4004\"\u003e#4004\u003c/a\u003e): fix(cli): kill-all should kill dashboard\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/9aa216c8d7f866e8a8fa94ca55d86e81a8f4decb\"\u003e\u003ccode\u003e9aa216c\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39994\"\u003e#39994\u003c/a\u003e): Revert \u0026quot;fix(windows): hide console window when spawning ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/01b2b1533e0bfa1c582117e3ec109fcb57657747\"\u003e\u003ccode\u003e01b2b15\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39980\"\u003e#39980\u003c/a\u003e): chore: more release notes fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/a5cb6c9a2f52078de075413beb812e3180d195ba\"\u003e\u003ccode\u003ea5cb6c9\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39972\"\u003e#39972\u003c/a\u003e): chore: expose browser.bind and browser.unbind APIs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/99a17b58541798b03257c57a9e5589db2394f89e\"\u003e\u003ccode\u003e99a17b5\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39975\"\u003e#39975\u003c/a\u003e): chore: support opening .trace files via .link indirection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/43607c3b71d89445a6473708429eeecd6f571d6e\"\u003e\u003ccode\u003e43607c3\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39974\"\u003e#39974\u003c/a\u003e): chore(webkit): update Safari user-agent version to 26.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/62cabe19eb07e329086e5cb20441737cf51367d0\"\u003e\u003ccode\u003e62cabe1\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39969\"\u003e#39969\u003c/a\u003e): chore(npm): include all *.md from lib (\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39970\"\u003e#39970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/0c65a759af337ba5143ebbe34afe4141482ce2d4\"\u003e\u003ccode\u003e0c65a75\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39968\"\u003e#39968\u003c/a\u003e): chore: screencast.showActions api\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/playwright/commit/f04155b09034c21719162146d6016de9933a2dbe\"\u003e\u003ccode\u003ef04155b\u003c/code\u003e\u003c/a\u003e cherry-pick(\u003ca href=\"https://redirect.github.com/microsoft/playwright/issues/39958\"\u003e#39958\u003c/a\u003e): chore: release notes for langs v1.59\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/playwright/compare/v1.58.2...v1.59.1\"\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.5.0 to 25.6.0\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 `jsdom` from 29.0.1 to 29.1.0\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.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded basic support for the ratio CSS type. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003egetComputedStyle()\u003c/code\u003e sometimes returning outdated results after CSS was modified. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev29.0.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSignificantly improved and sped up \u003ccode\u003egetComputedStyle()\u003c/code\u003e. Computed value rules are now applied across a broader set of properties, and include fixes related to inheritance, defaulting keywords, custom properties, and color-related values such as \u003ccode\u003ecurrentcolor\u003c/code\u003e and system colors. (\u003ca href=\"https://github.com/asamuzaK\"\u003e\u003ccode\u003e@​asamuzaK\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed CSS \u003ccode\u003e'background\u003c/code\u003e' and \u003ccode\u003e'border'\u003c/code\u003e shorthand parsing. (\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/5a3e88ea9b13d22457165c8296df7377ce243b24\"\u003e\u003ccode\u003e5a3e88e\u003c/code\u003e\u003c/a\u003e 29.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/73db2041724bb498ed55b4e863ffba7012e79675\"\u003e\u003ccode\u003e73db204\u003c/code\u003e\u003c/a\u003e Update dependencies and dev dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/a7168a579d26e43e8ea5599b7beb9b8f74c7f412\"\u003e\u003ccode\u003ea7168a5\u003c/code\u003e\u003c/a\u003e Support ratio CSS unit type\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/15346e055b070d4e4ed890b68e832b6dba1b9132\"\u003e\u003ccode\u003e15346e0\u003c/code\u003e\u003c/a\u003e Fix style cache invalidation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/2a1e2cdb443e276b28ca49937cf7a7d6fa0a4806\"\u003e\u003ccode\u003e2a1e2cd\u003c/code\u003e\u003c/a\u003e 29.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/4097d66ba188805a408b5186b4b8036bf582b40f\"\u003e\u003ccode\u003e4097d66\u003c/code\u003e\u003c/a\u003e Resolve computed CSS values lazily in CSSStyleDeclaration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/cf5523ff92978fc08f7e40c0f44053946101d064\"\u003e\u003ccode\u003ecf5523f\u003c/code\u003e\u003c/a\u003e Add more test cases for nested color-mix with currentColor\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/b33b61657e563ec841cb7a29c98ad236cc71c0b0\"\u003e\u003ccode\u003eb33b616\u003c/code\u003e\u003c/a\u003e Add test that getComputedStyle() works with !important\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/6bf559c416654641d3ca197982d646eac6de85ae\"\u003e\u003ccode\u003e6bf559c\u003c/code\u003e\u003c/a\u003e Add test for custom property inheritance in computed styles\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jsdom/jsdom/commit/68176571d00c50441fc3a428e1315fc1fb3b2bab\"\u003e\u003ccode\u003e6817657\u003c/code\u003e\u003c/a\u003e Fix border shorthand handling\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jsdom/jsdom/compare/v29.0.1...v29.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@esbuild/linux-x64` from 0.27.4 to 0.28.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/evanw/esbuild/releases\"\u003e\u003ccode\u003e@​esbuild/linux-x64\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.28.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for \u003ccode\u003ewith { type: 'text' }\u003c/code\u003e imports (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4435\"\u003e#4435\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe \u003ca href=\"https://github.com/tc39/proposal-import-text\"\u003eimport text\u003c/a\u003e proposal has reached stage 3 in the TC39 process, which means that it's recommended for implementation. It has also already been implemented by \u003ca href=\"https://docs.deno.com/examples/importing_text/\"\u003eDeno\u003c/a\u003e and \u003ca href=\"https://bun.com/docs/guides/runtime/import-html\"\u003eBun\u003c/a\u003e. So with this release, esbuild also adds support for it. This behaves exactly the same as esbuild's existing \u003ca href=\"https://esbuild.github.io/content-types/#text\"\u003e\u003ccode\u003etext\u003c/code\u003e loader\u003c/a\u003e. Here's an example:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eimport string from './example.txt' with { type: 'text' }\nconsole.log(string)\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd integrity checks to fallback download path (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eInstalling esbuild via npm is somewhat complicated with several different edge cases (see \u003ca href=\"https://esbuild.github.io/getting-started/#additional-npm-flags\"\u003eesbuild's documentation\u003c/a\u003e for details). If the regular installation of esbuild's platform-specific package fails, esbuild's install script attempts to download the platform-specific package itself (first with the \u003ccode\u003enpm\u003c/code\u003e command, and then with a HTTP request to \u003ccode\u003eregistry.npmjs.org\u003c/code\u003e as a last resort).\u003c/p\u003e\n\u003cp\u003eThis last resort path previously didn't have any integrity checks. With this release, esbuild will now verify that the hash of the downloaded binary matches the expected hash for the current release. This means the hashes for all of esbuild's platform-specific binary packages will now be embedded in the top-level \u003ccode\u003eesbuild\u003c/code\u003e package. Hopefully this should work without any problems. But just in case, this change is being done as a breaking change release.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdate the Go compiler from 1.25.7 to 1.26.1\u003c/p\u003e\n\u003cp\u003eThis upgrade should not affect anything. However, there have been some significant internal changes to the Go compiler, so esbuild could potentially behave differently in certain edge cases:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eIt now uses the \u003ca href=\"https://go.dev/doc/go1.26#new-garbage-collector\"\u003enew garbage collector\u003c/a\u003e that comes with Go 1.26.\u003c/li\u003e\n\u003cli\u003eThe Go compiler is now more aggressive with allocating memory on the stack.\u003c/li\u003e\n\u003cli\u003eThe executable format that the Go linker uses has undergone several changes.\u003c/li\u003e\n\u003cli\u003eThe WebAssembly build now unconditionally makes use of the sign extension and non-trapping floating-point to integer conversion instructions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read the \u003ca href=\"https://go.dev/doc/go1.26\"\u003eGo 1.26 release notes\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.27.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix lowering of define semantics for TypeScript parameter properties (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4421\"\u003e#4421\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe previous release incorrectly generated class fields for TypeScript parameter properties even when the configured target environment does not support class fields. With this release, the generated class fields will now be correctly lowered in this case:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// Original code\nclass Foo {\n  constructor(public x = 1) {}\n  y = 2\n}\n\u003cp\u003e// Old output (with --loader=ts --target=es2021)\u003cbr /\u003e\nclass Foo {\u003cbr /\u003e\nconstructor(x = 1) {\u003cbr /\u003e\nthis.x = x;\u003cbr /\u003e\n__publicField(this, \u0026quot;y\u0026quot;, 2);\u003cbr /\u003e\n}\u003cbr /\u003e\nx;\u003cbr /\u003e\n}\u003c/p\u003e\n\u003cp\u003e// New output (with --loader=ts --target=es2021)\u003cbr /\u003e\nclass Foo {\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\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/evanw/esbuild/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​esbuild/linux-x64\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.28.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for \u003ccode\u003ewith { type: 'text' }\u003c/code\u003e imports (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4435\"\u003e#4435\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe \u003ca href=\"https://github.com/tc39/proposal-import-text\"\u003eimport text\u003c/a\u003e proposal has reached stage 3 in the TC39 process, which means that it's recommended for implementation. It has also already been implemented by \u003ca href=\"https://docs.deno.com/examples/importing_text/\"\u003eDeno\u003c/a\u003e and \u003ca href=\"https://bun.com/docs/guides/runtime/import-html\"\u003eBun\u003c/a\u003e. So with this release, esbuild also adds support for it. This behaves exactly the same as esbuild's existing \u003ca href=\"https://esbuild.github.io/content-types/#text\"\u003e\u003ccode\u003etext\u003c/code\u003e loader\u003c/a\u003e. Here's an example:\u003c/p\u003e\n\u003cpre lang=\"js\"\u003e\u003ccode\u003eimport string from './example.txt' with { type: 'text' }\nconsole.log(string)\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd integrity checks to fallback download path (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eInstalling esbuild via npm is somewhat complicated with several different edge cases (see \u003ca href=\"https://esbuild.github.io/getting-started/#additional-npm-flags\"\u003eesbuild's documentation\u003c/a\u003e for details). If the regular installation of esbuild's platform-specific package fails, esbuild's install script attempts to download the platform-specific package itself (first with the \u003ccode\u003enpm\u003c/code\u003e command, and then with a HTTP request to \u003ccode\u003eregistry.npmjs.org\u003c/code\u003e as a last resort).\u003c/p\u003e\n\u003cp\u003eThis last resort path previously didn't have any integrity checks. With this release, esbuild will now verify that the hash of the downloaded binary matches the expected hash for the current release. This means the hashes for all of esbuild's platform-specific binary packages will now be embedded in the top-level \u003ccode\u003eesbuild\u003c/code\u003e package. Hopefully this should work without any problems. But just in case, this change is being done as a breaking change release.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdate the Go compiler from 1.25.7 to 1.26.1\u003c/p\u003e\n\u003cp\u003eThis upgrade should not affect anything. However, there have been some significant internal changes to the Go compiler, so esbuild could potentially behave differently in certain edge cases:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eIt now uses the \u003ca href=\"https://go.dev/doc/go1.26#new-garbage-collector\"\u003enew garbage collector\u003c/a\u003e that comes with Go 1.26.\u003c/li\u003e\n\u003cli\u003eThe Go compiler is now more aggressive with allocating memory on the stack.\u003c/li\u003e\n\u003cli\u003eThe executable format that the Go linker uses has undergone several changes.\u003c/li\u003e\n\u003cli\u003eThe WebAssembly build now unconditionally makes use of the sign extension and non-trapping floating-point to integer conversion instructions.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eYou can read the \u003ca href=\"https://go.dev/doc/go1.26\"\u003eGo 1.26 release notes\u003c/a\u003e for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.27.7\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix lowering of define semantics for TypeScript parameter properties (\u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4421\"\u003e#4421\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe previous release incorrectly generated class fields for TypeScript parameter properties even when the configured target environment does not support class fields. With this release, the generated class fields will now be correctly lowered in this case:\u003c/p\u003e\n\u003cpre lang=\"ts\"\u003e\u003ccode\u003e// Original code\nclass Foo {\n  constructor(public x = 1) {}\n  y = 2\n}\n\u003cp\u003e// Old output (with --loader=ts --target=es2021)\u003cbr /\u003e\nclass Foo {\u003cbr /\u003e\nconstructor(x = 1) {\u003cbr /\u003e\nthis.x = x;\u003cbr /\u003e\n__publicField(this, \u0026quot;y\u0026quot;, 2);\u003cbr /\u003e\n}\u003cbr /\u003e\nx;\u003cbr /\u003e\n}\u003c/p\u003e\n\u003cp\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/6a794dff68e6a43539f6da671e3080efdf11ca70\"\u003e\u003ccode\u003e6a794df\u003c/code\u003e\u003c/a\u003e publish 0.28.0 to npm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/64ee0ea63b2ff303caafc9610c388dc72c882c23\"\u003e\u003ccode\u003e64ee0ea\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4435\"\u003e#4435\u003c/a\u003e: support \u003ccode\u003ewith { type: text }\u003c/code\u003e imports\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/ef65aeeaacdb71eade186f888975b1de89574314\"\u003e\u003ccode\u003eef65aee\u003c/code\u003e\u003c/a\u003e fix sort order in \u003ccode\u003esnapshots_packagejson.txt\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/1a26a8ecbc39aaf1379c524a0274a08fbcbed655\"\u003e\u003ccode\u003e1a26a8e\u003c/code\u003e\u003c/a\u003e try to fix \u003ccode\u003etest-old-ts\u003c/code\u003e, also shuffle CI tasks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/556ce6c1fc00d7c0917fbfada01ed8e5251bc510\"\u003e\u003ccode\u003e556ce6c\u003c/code\u003e\u003c/a\u003e use \u003ccode\u003e''\u003c/code\u003e instead of \u003ccode\u003enull\u003c/code\u003e to omit build hashes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/8e675a81a473ea69a46a69792f1386bb110dd877\"\u003e\u003ccode\u003e8e675a8\u003c/code\u003e\u003c/a\u003e ci: allow missing binary hashes for tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/7067763b904fe8a522fa840a4a48c5fbd4c395e0\"\u003e\u003ccode\u003e7067763\u003c/code\u003e\u003c/a\u003e Reapply \u0026quot;update go 1.25.7 =\u0026gt; 1.26.1\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/39473a952ab3b450d0578b698a8b8d2a02332e0d\"\u003e\u003ccode\u003e39473a9\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/evanw/esbuild/issues/4343\"\u003e#4343\u003c/a\u003e: integrity check for binary download\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/2025c9ff6ab15ba6b0f9d074fd732250cc46e4a3\"\u003e\u003ccode\u003e2025c9f\u003c/code\u003e\u003c/a\u003e publish 0.27.7 to npm\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/evanw/esbuild/commit/c6b586e4904f47e8d5f783a2813660c13e2672e7\"\u003e\u003ccode\u003ec6b586e\u003c/code\u003e\u003c/a\u003e fix typo in \u003ccode\u003eMakefile\u003c/code\u003e for \u003ccode\u003e@esbuild/win32-x64\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/evanw/esbuild/compare/v0.27.4...v0.28.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@next/swc-linux-x64-gnu` from 16.2.1 to 16.2.4\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\"\u003e\u003ccode\u003e@​next/swc-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev16.2.4\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release is backporting 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\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003echore: Bump reqwest to 0.13.2 (Fixes Google Fonts with Turbopack for Windows on ARM64) (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92713\"\u003e#92713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTurbopack: fix filesystem watcher config not applying follow_symlinks(false) (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92631\"\u003e#92631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eScope Safari ?ts= cache-buster to CSS/font assets only (Pages Router) (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92580\"\u003e#92580\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompiler: Support boolean and number primtives in next.config defines (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92731\"\u003e#92731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eturbo-tasks: Fix recomputation loop by allowing cell cleanup on error during recomputation (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92725\"\u003e#92725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTurbopack: shorter error for ChunkGroupInfo::get_index_of (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92814\"\u003e#92814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTurbopack: shorter error message for ModuleBatchesGraph::get_entry_index (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92828\"\u003e#92828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding more system info to the 'initialize project' trace (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92427\"\u003e#92427\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCredits\u003c/h3\u003e\n\u003cp\u003eHuge thanks to \u003ca href=\"https://github.com/Badbird5907\"\u003e\u003ccode\u003e@​Badbird5907\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/lukesandberg\"\u003e\u003ccode\u003e@​lukesandberg\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/andrewimm\"\u003e\u003ccode\u003e@​andrewimm\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sokra\"\u003e\u003ccode\u003e@​sokra\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/mischnic\"\u003e\u003ccode\u003e@​mischnic\u003c/code\u003e\u003c/a\u003e for helping!\u003c/p\u003e\n\u003ch2\u003ev16.2.3\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release is backporting security and bug fixes. For more information about the fixed security vulnerability, please see \u003ca href=\"https://vercel.com/changelog/summary-of-cve-2026-23869\"\u003ehttps://vercel.com/changelog/summary-of-cve-2026-23869\u003c/a\u003e. The release does \u003cstrong\u003enot\u003c/strong\u003e include all pending features/changes on canary.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch3\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure app-page reports stale ISR revalidation errors via onRequestError (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92282\"\u003e#92282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix [Bug]: manifest.ts breaks HMR in Next.js 16.2 (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/91981\"\u003e#91981\u003c/a\u003e through \u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92273\"\u003e#92273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeduplicate output assets and detect content conflicts on emit (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92292\"\u003e#92292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix styled-jsx race condition: styles lost due to concurrent rendering (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92459\"\u003e#92459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eturbo-tasks-backend: stability fixes for task cancellation and error handling (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92254\"\u003e#92254\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCredits\u003c/h3\u003e\n\u003cp\u003eHuge thanks to \u003ca href=\"https://github.com/icyJoseph\"\u003e\u003ccode\u003e@​icyJoseph\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/sokra\"\u003e\u003ccode\u003e@​sokra\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/wbinnssmith\"\u003e\u003ccode\u003e@​wbinnssmith\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/eps1lon\"\u003e\u003ccode\u003e@​eps1lon\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/ztanner\"\u003e\u003ccode\u003e@​ztanner\u003c/code\u003e\u003c/a\u003e for helping!\u003c/p\u003e\n\u003ch2\u003ev16.2.2\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!NOTE]\nThis release is backporting 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\u003eCore Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ebackport: Move expanded adapters docs to API reference (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92115\"\u003e#92115\u003c/a\u003e) (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92129\"\u003e#92129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBackport: TypeScript v6 deprecations for baseUrl and moduleResolution (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92130\"\u003e#92130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[create-next-app] Skip interactive prompts when CLI flags are provided (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/91840\"\u003e#91840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003enext.config.js: Accept an option for serverFastRefresh (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/91968\"\u003e#91968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTurbopack: enable server HMR for app route handlers (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/91466\"\u003e#91466\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTurbopack: exclude metadata routes from server HMR (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92034\"\u003e#92034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix CI for glibc linux builds\u003c/li\u003e\n\u003cli\u003eBackport: disable bmi2 in qfilter \u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92177\"\u003e#92177\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[backport] Fix CSS HMR on Safari (\u003ca href=\"https://github.com/vercel/next.js/tree/HEAD/crates/next-napi-bindings/npm/linux-x64-gnu/issues/92174\"\u003e#92174\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\u003eSee full diff in \u003ca href=\"https://github.com/vercel/next.js/commits/v16.2.4/crates/next-napi-bindings/npm/linux-x64-gnu\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.1 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev4.2.2\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport Vite 8 in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19790\"\u003e#19790\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDon't crash when candidates contain prototype properties like \u003ccode\u003erow-constructor\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19725\"\u003e#19725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalize \u003ccode\u003ecalc(var(--spacing)*…)\u003c/code\u003e expressions into \u003ccode\u003e--spacing(…)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19769\"\u003e#19769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash in canonicalization step when handling utilities containing \u003ccode\u003e@property\u003c/code\u003e at-rules (e.g. \u003ccode\u003eshadow-sm border\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19727\"\u003e#19727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip full reload for server only modules scanned by client CSS when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19745\"\u003e#19745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove canonicalization for bare values exceeding default spacing scale suggestions (e.g. \u003ccode\u003ew-1234 h-1234\u003c/code\u003e → \u003ccode\u003esize-1234\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19809\"\u003e#19809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix canonicalization resulting in empty list (e.g. \u003ccode\u003ew-5 h-5 size-5\u003c/code\u003e → \u003ccode\u003e''\u003c/code\u003e instead of \u003ccode\u003esize-5\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19812\"\u003e#19812\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[4.2.2] - 2026-03-18\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDon't crash when candidates contain prototype properties like \u003ccode\u003erow-constructor\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19725\"\u003e#19725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalize \u003ccode\u003ecalc(var(--spacing)*…)\u003c/code\u003e expressions into \u003ccode\u003e--spacing(…)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19769\"\u003e#19769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash in canonicalization step when handling utilities containing \u003ccode\u003e@property\u003c/code\u003e at-rules (e.g. \u003ccode\u003eshadow-sm border\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19727\"\u003e#19727\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip full reload for server only modules scanned by client CSS when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19745\"\u003e#19745\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for Vite 8 in \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19790\"\u003e#19790\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove canonicalization for bare values exceeding default spacing scale suggestions (e.g. \u003ccode\u003ew-1234 h-1234\u003c/code\u003e → \u003ccode\u003esize-1234\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19809\"\u003e#19809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix canonicalization resulting in empty list (e.g. \u003ccode\u003ew-5 h-5 size-5\u003c/code\u003e → \u003ccode\u003e''\u003c/code\u003e instead of \u003ccode\u003esize-5\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19812\"\u003e#19812\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve tsconfig paths to allow for \u003ccode\u003e@import '@/path/to/file';\u003c/code\u003e when using \u003ccode\u003e@tailwindcss/vite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19803\"\u003e#19803\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\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/crates/node/npm/linux-x64-gnu/issues/19821\"\u003e#19821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@rollup/rollup-linux-x64-gnu` from 4.60.0 to 4.60.2\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\u003ccode\u003e@​rollup/rollup-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003ch2\u003ev4.60.1\u003c/h2\u003e\n\u003ch2\u003e4.60.1\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2026-03-30\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eResolve a situation where side effect imports could be dropped due to a caching issue (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6286\"\u003e#6286\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/6286\"\u003e#6286\u003c/a\u003e: fix: skip dropping side-effects on namespaceReexportsByName cache hit (\u003ca href=\"https://redirect.github.com/rollup/rollup/issues/6274\"\u003e#6274\u003c/a\u003e) (\u003ca href=\"https://github.com/littlegrayss\"\u003e\u003ccode\u003e@​littlegrayss\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/TrickyPi\"\u003e\u003ccode\u003e@​TrickyPi\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/rollup/rollup/pull/6317\"\u003e#6317\u003c/a\u003e: chore(deps): pin dependencies (\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/6318\"\u003e#6318\u003c/a\u003e: chore(deps): update msys2/setup-msys2 digest to cafece8 (\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/6319\"\u003e#6319\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], \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/6320\"\u003e#6320\u003c/a\u003e: chore(deps): pin dependency typescript to v5 (\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/6321\"\u003e#6321\u003c/a\u003e: chore(deps): update openharmony-rs/setup-ohos-sdk action to v1 (\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/6322\"\u003e#6322\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/6323\"\u003e#6323\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/6324\"\u003e#6324\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/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\u003ccode\u003e@​rollup/rollup-linux-x64-gnu\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003ccod...\n\n_Description has been truncated_","html_url":"https://github.com/fastxyz/marketplace/pull/64","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/fastxyz%2Fmarketplace/issues/64","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/64/packages"}},{"old_version":"4.2.2","new_version":"4.2.4","update_type":"patch","path":null,"pr_created_at":"2026-04-26T23:09:39.000Z","version_change":"4.2.2 → 4.2.4","issue":{"uuid":"4332241485","node_id":"PR_kwDORIptPM7VyD_N","number":82,"state":"open","title":"deps(npm): bump the tailwind group with 16 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-04-26T23:09:39.000Z","updated_at":"2026-04-26T23:09:40.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(npm): bump","group_name":"tailwind","update_count":16,"packages":[{"name":"@tailwindcss/postcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"tailwindcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/node","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-android-arm64","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-arm64","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-darwin-x64","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-freebsd-x64","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm-gnueabihf","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-arm64-musl","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-musl","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-wasm32-wasi","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-arm64-msvc","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-win32-x64-msvc","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":null,"ecosystem":"npm"},"body":"Bumps the tailwind group with 16 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.2` | `4.2.4` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/node](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-android-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/android-arm64) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-darwin-arm64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-arm64) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-darwin-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/darwin-x64) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-freebsd-x64](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/freebsd-x64) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm-gnueabihf](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm-gnueabihf) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-gnu) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-arm64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-arm64-musl) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-x64-musl](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-musl) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-wasm32-wasi](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-win32-arm64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-arm64-msvc) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-win32-x64-msvc](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/win32-x64-msvc) | `4.2.2` | `4.2.4` |\n\nUpdates `@tailwindcss/postcss` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4527123f68f4169a1236d3d6dd45d91540691ee9\"\u003e\u003ccode\u003e4527123\u003c/code\u003e\u003c/a\u003e docs(postcss): remove duplicated optimize example from README (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19938\"\u003e#19938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/aad601711fd43d5bf2966a8c30767a6945aaf451\"\u003e\u003ccode\u003eaad6017\u003c/code\u003e\u003c/a\u003e docs/fix-lightning-css-typo-postcss-readme (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19913\"\u003e#19913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/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` from 4.2.2 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003etailwindcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/issues/19948\"\u003e#19948\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/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/df6209ab8b957e56e6e00042a3e4080c14a072ea\"\u003e\u003ccode\u003edf6209a\u003c/code\u003e\u003c/a\u003e Canonicalize negative arbitrary values (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52fd421cc941aad650db769f04b77d08c56951df\"\u003e\u003ccode\u003e52fd421\u003c/code\u003e\u003c/a\u003e Small refactor of canonicalization tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19851\"\u003e#19851\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/c385fd36bcce707a02c229ebeb66ea88e12eb041\"\u003e\u003ccode\u003ec385fd3\u003c/code\u003e\u003c/a\u003e use \u003ccode\u003etest.each\u003c/code\u003e instead of manual loop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/0d6e038889f49a809a4077ef7badc7d43184cd42\"\u003e\u003ccode\u003e0d6e038\u003c/code\u003e\u003c/a\u003e fix index in test name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/88a2d22c2fdb65c5f8c3b2f68db9713f8bf2e656\"\u003e\u003ccode\u003e88a2d22\u003c/code\u003e\u003c/a\u003e Add more canonicalization rules for deprecated utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2c1ef9eb2564f2c83df970eb9f68c19d340c02e5\"\u003e\u003ccode\u003e2c1ef9e\u003c/code\u003e\u003c/a\u003e Use \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/28d526859dfd1efe204c8f037c3fe472d9b5d08e\"\u003e\u003ccode\u003e28d5268\u003c/code\u003e\u003c/a\u003e Collapse more utilities by expanding their declarations (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/b55d96002ce4516c5158ad3565229267b948c1ac\"\u003e\u003ccode\u003eb55d960\u003c/code\u003e\u003c/a\u003e fix(canonicalize): collapse arbitrary values into shorthand utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/packages/tailwindcss\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/node` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/node\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/node\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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-node/issues/19948\"\u003e#19948\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-node/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/998a6be85d4cab9cbf59b184443cd02c1aa175cc\"\u003e\u003ccode\u003e998a6be\u003c/code\u003e\u003c/a\u003e format\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/5a835e1728c91b73da47de9831187ea4d83cf791\"\u003e\u003ccode\u003e5a835e1\u003c/code\u003e\u003c/a\u003e support NODE_PATH in standalone build (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-node/issues/19617\"\u003e#19617\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/packages/@tailwindcss-node\"\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/node\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/issues/19948\"\u003e#19948\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/crates/node/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node\"\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/oxide\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-android-arm64` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-android-arm64\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide-android-arm64\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/npm/android-arm64/issues/19948\"\u003e#19948\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/crates/node/npm/android-arm64/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/android-arm64\"\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/oxide-android-arm64\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-darwin-arm64` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-darwin-arm64\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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. ...\n\n_Description has been truncated_","html_url":"https://github.com/openctemio/ui/pull/82","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/openctemio%2Fui/issues/82","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/82/packages"}},{"old_version":"4.2.2","new_version":"4.2.4","update_type":"patch","path":null,"pr_created_at":"2026-04-26T03:03:02.000Z","version_change":"4.2.2 → 4.2.4","issue":{"uuid":"4329889618","node_id":"PR_kwDOSMuiFs7VrO0B","number":4,"state":"open","title":"build(deps): bump the minor-and-patch group with 8 updates","user":"dependabot[bot]","labels":["web","sdk","dependencies"],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-26T03:03:02.000Z","updated_at":"2026-04-26T09:01:36.288Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"minor-and-patch","update_count":8,"packages":[{"name":"@commitlint/cli","old_version":"20.5.0","new_version":"20.5.2","repository_url":"https://github.com/conventional-changelog/commitlint"},{"name":"@typescript-eslint/eslint-plugin","old_version":"8.58.2","new_version":"8.59.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@typescript-eslint/parser","old_version":"8.58.2","new_version":"8.59.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"typescript-eslint","old_version":"8.58.2","new_version":"8.59.0","repository_url":"https://github.com/typescript-eslint/typescript-eslint"},{"name":"@tailwindcss/postcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"tailwindcss","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"},{"name":"@vitest/coverage-v8","old_version":"4.1.4","new_version":"4.1.5","repository_url":"https://github.com/vitest-dev/vitest"}],"path":null,"ecosystem":"npm"},"body":"Bumps the minor-and-patch group with 8 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) | `20.5.0` | `20.5.2` |\n| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.58.2` | `8.59.0` |\n| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.58.2` | `8.59.0` |\n| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint) | `8.58.2` | `8.59.0` |\n| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) | `4.2.2` | `4.2.4` |\n| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) | `4.2.2` | `4.2.4` |\n| [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu) | `4.2.2` | `4.2.4` |\n| [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) | `4.1.4` | `4.1.5` |\n\nUpdates `@commitlint/cli` from 20.5.0 to 20.5.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/conventional-changelog/commitlint/releases\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev20.5.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.5.1...v20.5.2\"\u003e20.5.2\u003c/a\u003e (2026-04-25)\u003c/h2\u003e\n\u003cp\u003eJust minor dep updates before the next breaking change\u003c/p\u003e\n\u003ch2\u003eChore \u0026amp; Docs\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: remove codesandbox ci integration by \u003ca href=\"https://github.com/escapedcat\"\u003e\u003ccode\u003e@​escapedcat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4680\"\u003econventional-changelog/commitlint#4680\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: add Windows UTF-8 encoding note to getting started guide by \u003ca href=\"https://github.com/Chessing234\"\u003e\u003ccode\u003e@​Chessing234\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4699\"\u003econventional-changelog/commitlint#4699\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: improve parserPreset documentation with examples and options reference by \u003ca href=\"https://github.com/Chessing234\"\u003e\u003ccode\u003e@​Chessing234\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4700\"\u003econventional-changelog/commitlint#4700\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: fix subject-case rule default from 'always' to 'never' by \u003ca href=\"https://github.com/Chessing234\"\u003e\u003ccode\u003e@​Chessing234\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4703\"\u003econventional-changelog/commitlint#4703\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/Chessing234\"\u003e\u003ccode\u003e@​Chessing234\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4699\"\u003econventional-changelog/commitlint#4699\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.5.1...v20.5.2\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v20.5.1...v20.5.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev20.5.1\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.5.0...v20.5.1\"\u003e20.5.1\u003c/a\u003e (2026-03-31)\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix(cz-commitlint): add VS16 to single character emojis by \u003ca href=\"https://github.com/mrt181\"\u003e\u003ccode\u003e@​mrt181\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4666\"\u003econventional-changelog/commitlint#4666\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(cz-commitlint): handle modifiers correctly by \u003ca href=\"https://github.com/mrt181\"\u003e\u003ccode\u003e@​mrt181\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4667\"\u003econventional-changelog/commitlint#4667\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eReverts\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRevert \u0026quot;fix: update dependency global-directory to v5 (\u003ca href=\"https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli/issues/4671\"\u003e#4671\u003c/a\u003e)\u0026quot; by \u003ca href=\"https://github.com/escapedcat\"\u003e\u003ccode\u003e@​escapedcat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4677\"\u003econventional-changelog/commitlint#4677\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eCore \u0026amp; co\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: deps and CI improvements by \u003ca href=\"https://github.com/escapedcat\"\u003e\u003ccode\u003e@​escapedcat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4660\"\u003econventional-changelog/commitlint#4660\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: restore push on all branches, avoid duplicate runs by \u003ca href=\"https://github.com/escapedcat\"\u003e\u003ccode\u003e@​escapedcat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/conventional-changelog/commitlint/pull/4665\"\u003econventional-changelog/commitlint#4665\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.5.0...v20.5.1\"\u003ehttps://github.com/conventional-changelog/commitlint/compare/v20.5.0...v20.5.1\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/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md\"\u003e\u003ccode\u003e@​commitlint/cli\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/conventional-changelog/commitlint/compare/v20.5.1...v20.5.2\"\u003e20.5.2\u003c/a\u003e (2026-04-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eNote:\u003c/strong\u003e Version bump only for package \u003ccode\u003e@​commitlint/cli\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/conventional-changelog/commitlint/commit/7fe86b28f0779cce8d8459bdcc83c849936a1b80\"\u003e\u003ccode\u003e7fe86b2\u003c/code\u003e\u003c/a\u003e v20.5.2\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/conventional-changelog/commitlint/commits/v20.5.2/@commitlint/cli\"\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.58.2 to 8.59.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\u003ccode\u003e@​typescript-eslint/eslint-plugin\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md\"\u003e\u003ccode\u003e@​typescript-eslint/eslint-plugin\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning 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/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/cfca5506346503830ce348aabe8e82fe28a8e687\"\u003e\u003ccode\u003ecfca550\u003c/code\u003e\u003c/a\u003e feat(eslint-plugin): [no-unnecessary-type-assertion] report more cases based ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/6d599b4769e22ed634236980d7da1e23e3f073a6\"\u003e\u003ccode\u003e6d599b4\u003c/code\u003e\u003c/a\u003e chore(eslint-plugin): switch auto-generated test cases to hand-written in ret...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commit/33c81691ec8f240209d8662dd2ca72602731e5b0\"\u003e\u003ccode\u003e33c8169\u003c/code\u003e\u003c/a\u003e chore: fix cspell violations in code blocks (\u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/12167\"\u003e#12167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.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.58.2 to 8.59.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\u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md\"\u003e\u003ccode\u003e@​typescript-eslint/parser\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for parser to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\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/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.0/packages/parser\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typescript-eslint` from 8.58.2 to 8.59.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases\"\u003etypescript-eslint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.59.0\u003c/h2\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eeslint-plugin:\u003c/strong\u003e [no-unnecessary-type-assertion] report more cases based on assignability (\u003ca href=\"https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11789\"\u003e#11789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e❤️ Thank You\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUlrich Stark\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md\"\u003etypescript-eslint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.59.0 (2026-04-20)\u003c/h2\u003e\n\u003cp\u003eThis was a version bump only for typescript-eslint to align it with other projects, there were no code changes.\u003c/p\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0\"\u003eGitHub Releases\u003c/a\u003e for more information.\u003c/p\u003e\n\u003cp\u003eYou can read about our \u003ca href=\"https://typescript-eslint.io/users/versioning\"\u003eversioning strategy\u003c/a\u003e and \u003ca href=\"https://typescript-eslint.io/users/releases\"\u003ereleases\u003c/a\u003e on our website.\u003c/p\u003e\n\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/ea9ae4f8817873480e3501145059f63e39e8d8a1\"\u003e\u003ccode\u003eea9ae4f\u003c/code\u003e\u003c/a\u003e chore(release): publish 8.59.0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typescript-eslint/typescript-eslint/commits/v8.59.0/packages/typescript-eslint\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/postcss` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/postcss\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/4527123f68f4169a1236d3d6dd45d91540691ee9\"\u003e\u003ccode\u003e4527123\u003c/code\u003e\u003c/a\u003e docs(postcss): remove duplicated optimize example from README (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19938\"\u003e#19938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/aad601711fd43d5bf2966a8c30767a6945aaf451\"\u003e\u003ccode\u003eaad6017\u003c/code\u003e\u003c/a\u003e docs/fix-lightning-css-typo-postcss-readme (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss/issues/19913\"\u003e#19913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/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` from 4.2.2 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/releases\"\u003etailwindcss's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003etailwindcss's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/issues/19948\"\u003e#19948\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/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/df6209ab8b957e56e6e00042a3e4080c14a072ea\"\u003e\u003ccode\u003edf6209a\u003c/code\u003e\u003c/a\u003e Canonicalize negative arbitrary values (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/52fd421cc941aad650db769f04b77d08c56951df\"\u003e\u003ccode\u003e52fd421\u003c/code\u003e\u003c/a\u003e Small refactor of canonicalization tests (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19851\"\u003e#19851\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/c385fd36bcce707a02c229ebeb66ea88e12eb041\"\u003e\u003ccode\u003ec385fd3\u003c/code\u003e\u003c/a\u003e use \u003ccode\u003etest.each\u003c/code\u003e instead of manual loop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/0d6e038889f49a809a4077ef7badc7d43184cd42\"\u003e\u003ccode\u003e0d6e038\u003c/code\u003e\u003c/a\u003e fix index in test name\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/88a2d22c2fdb65c5f8c3b2f68db9713f8bf2e656\"\u003e\u003ccode\u003e88a2d22\u003c/code\u003e\u003c/a\u003e Add more canonicalization rules for deprecated utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/2c1ef9eb2564f2c83df970eb9f68c19d340c02e5\"\u003e\u003ccode\u003e2c1ef9e\u003c/code\u003e\u003c/a\u003e Use \u003ccode\u003e--placeholder-color\u003c/code\u003e instead of \u003ccode\u003e--background-color\u003c/code\u003e for \u003ccode\u003eplaceholder-*\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/28d526859dfd1efe204c8f037c3fe472d9b5d08e\"\u003e\u003ccode\u003e28d5268\u003c/code\u003e\u003c/a\u003e Collapse more utilities by expanding their declarations (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19842\"\u003e#19842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commit/b55d96002ce4516c5158ad3565229267b948c1ac\"\u003e\u003ccode\u003eb55d960\u003c/code\u003e\u003c/a\u003e fix(canonicalize): collapse arbitrary values into shorthand utilities (\u003ca href=\"https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss/issues/19837\"\u003e#19837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/packages/tailwindcss\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\u003c/code\u003e since your current version.\u003c/p\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `@vitest/coverage-v8` from 4.1.4 to 4.1.5\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\u003ccode\u003e@​vitest/coverage-v8\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\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/e399846850fedf10b8228cbe46a419628998acd9\"\u003e\u003ccode\u003ee399846\u003c/code\u003e\u003c/a\u003e chore: release v4.1.5\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/vitest-dev/vitest/commits/v4.1.5/packages/coverage-v8\"\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/pogeku/Cards402/pull/4","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/pogeku%2FCards402/issues/4","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4/packages"}},{"old_version":"4.2.2","new_version":"4.2.4","update_type":"patch","path":"the npm-minor-patch group across 1 directory","pr_created_at":"2026-04-24T19:30:22.000Z","version_change":"4.2.2 → 4.2.4","issue":{"uuid":"4325126206","node_id":"PR_kwDORPmCMc7VceGq","number":52,"state":"closed","title":"chore(deps): bump @tailwindcss/oxide-linux-x64-gnu from 4.2.2 to 4.2.4 in the npm-minor-patch group across 1 directory","user":"dependabot[bot]","labels":["dependencies","javascript"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-26T01:04:14.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-24T19:30:22.000Z","updated_at":"2026-04-26T01:04:21.000Z","time_to_close":106432,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"@tailwindcss/oxide-linux-x64-gnu","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/tailwindlabs/tailwindcss"}],"path":"the npm-minor-patch group across 1 directory","ecosystem":"npm"},"body":"Bumps the npm-minor-patch group with 1 update in the / directory: [@tailwindcss/oxide-linux-x64-gnu](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/crates/node/npm/linux-x64-gnu).\n\nUpdates `@tailwindcss/oxide-linux-x64-gnu` from 4.2.2 to 4.2.4\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\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md\"\u003e\u003ccode\u003e@​tailwindcss/oxide-linux-x64-gnu\u003c/code\u003e's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\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 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\u003cli\u003eAdd \u003ccode\u003e.env\u003c/code\u003e and \u003ccode\u003e.env.*\u003c/code\u003e to default ignored content files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eoverflow-ellipsis\u003c/code\u003e into \u003ccode\u003etext-ellipsis\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003estart-full\u003c/code\u003e → \u003ccode\u003einset-s-full\u003c/code\u003e, \u003ccode\u003estart-auto\u003c/code\u003e → \u003ccode\u003einset-s-auto\u003c/code\u003e, \u003ccode\u003estart-px\u003c/code\u003e → \u003ccode\u003einset-s-px\u003c/code\u003e, and \u003ccode\u003estart-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-s-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: migrate \u003ccode\u003eend-full\u003c/code\u003e → \u003ccode\u003einset-e-full\u003c/code\u003e, \u003ccode\u003eend-auto\u003c/code\u003e → \u003ccode\u003einset-e-auto\u003c/code\u003e, \u003ccode\u003eend-px\u003c/code\u003e → \u003ccode\u003einset-e-px\u003c/code\u003e, and \u003ccode\u003eend-\u0026lt;number\u0026gt;\u003c/code\u003e → \u003ccode\u003einset-e-\u0026lt;number\u0026gt;\u003c/code\u003e as well as negative versions (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign inside the arbitrary value \u003ccode\u003e-left-[9rem]\u003c/code\u003e → \u003ccode\u003eleft-[-9rem]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCanonicalization: move the \u003ccode\u003e-\u003c/code\u003e sign outside the arbitrary value \u003ccode\u003eml-[calc(-1*var(--width))]\u003c/code\u003e → \u003ccode\u003e-ml-(--width)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19858\"\u003e#19858\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove performance when scanning JSONL / NDJSON files (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19862\"\u003e#19862\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport \u003ccode\u003eNODE_PATH\u003c/code\u003e environment variable in standalone CLI (\u003ca href=\"https://redirect.github.com/tailwindlabs/tailwindcss/pull/19617\"\u003e#19617\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/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/crates/node/npm/linux-x64-gnu/issues/19948\"\u003e#19948\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/crates/node/npm/linux-x64-gnu/issues/19944\"\u003e#19944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tailwindlabs/tailwindcss/commits/v4.2.4/crates/node/npm/linux-x64-gnu\"\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/oxide-linux-x64-gnu\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=@tailwindcss/oxide-linux-x64-gnu\u0026package-manager=npm_and_yarn\u0026previous-version=4.2.2\u0026new-version=4.2.4)](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 \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/binarygary/gratitude/pull/52","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/binarygary%2Fgratitude/issues/52","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/52/packages"}}]}