v4.0.0-beta.4 (2026-10-22)
๐ Features
- accessibility improvements related to contrast (#18354) (f597932)
- ui: open recents widget on recently viewed when nothing is pinned (#18747) (133be0f)
๐ Bug Fixes
- bump undici to 7.30.1 (#18949) (20aa089)
- bump minimum node version to 24.22.1 (#18946) (26f56ad)
- cancel unused file transformer streams (#18952) (494de46)
- align global version restoration with collections (#18928) (d2ae5e6)
- pass document id to field access (#18270) (6df5547)
- preserve native detail in PR demo recordings (#18853) (9f7781e)
- db-mongodb: support limit 0 in joins across multiple collections (#18813) (2c7056e)
- drizzle: support localized filters in polymorphic joins (#18847) (debd218)
- richtext-lexical: preserve link drawer form state (#18858) (5bc6c58)
- ui: address remaining accessibility audit findings (#18631) (d597d57)
- ui: accessibility improvements related to names / labels (#18634) (77d2cbd)
- ui: preserve published content when restoring drafts (#18394) (4859c0b)
- ui: activity widget tab focus outline is clipped (#18918) (13041e7)
- ui: accessibility improvements related to tabs (#18619) (400c446)
- ui: accessibility improvements related to headings and labels (#18621) (bb87f54)
- ui: prevent column toggles from flickering during navigation (#18830) (c4ad7a1)
- ui: align tabs field labels with content (#18685) (b020b7f)
- ui: server-render the dashboard activity widget (#18721) (9c39e43)
- ui: accessibility improvements related to drag-reorder (#18624) (74e6f52)
โก Performance
- richtext-lexical: find lexical feature sub-fields without scanning the client field schema map (#18719) (582c25b)
- tanstack-start: up to 3x faster initial loads in dev (#18848) (7d60563)
๐ Refactors
- consolidate server external package lists (#18911) (23c72cd)
- ui: rename the recents widget to activity widget (#18790) (7a747f6)
๐ Documentation
๐จ Styles
- replace eslint-plugin-react-compiler with oxlint's React Compiler rules (#18893) (bb658b0)
- replace eslint with oxlint (#18809) (dde9664)
๐งช Tests
- enable title column before opening a11y fixtures (#18942) (c4131e9)
- split a11y suite up into 3 shards (#18934) (44c67f5)
- ignore aborted TanStack server function streams in console error check (#18890) (b8c0b57)
๐จ Build
โ๏ธ CI
- preserve integration test heap settings (#18923) (c990f18)
- grant cache lookup jobs actions read permission (#18865) (a4141d4)
- retry apt downloads in the visual regression job (#18889) (de2416c)
- back off with jitter when pulling service images (#18888) (e166848)
- upgrade pnpm to 11.28.6 (#18867) (aafb429)
- only dismiss stale approvals on pushes from contributors without write access (#18850) (962de78)
- reduce releaser log noise (#18842) (54d1331)
- bump templates to the released version on every release (#18728) (8bb893f)
- pick the release bump from the commits, require a reason to override (#18729) (103939e)
- preview release notes on bump dry run and harden release flow (#18796) (c2c9143)
๐ก Chores
- fix React Compiler lint errors (#18894) (d0d0a17)
- add lint commit to .git-blame-ignore-revs (#18841) (0801a43)
- lint everything using oxlint (#18811) (f564d02)
- rename eslint-config and eslint-plugin to oxlint-config and oxlint-plugin (#18808) (ea03555)
- richtext-lexical: re-enable @lexical/eslint-plugin (#18807) (d43175d)
- ui: remove unused widget card styles (#18922) (d0d407b)
- ui: refine activity widget card and pin styling (#18791) (7a4de76)
- ui: mark built-in dashboard widget exports as internal (#18799) (a2d26c5)
โ ๏ธ BREAKING CHANGES
-
bump minimum node version to 24.22.1 (#18946) (26f56ad)
Raises the minimum supported Node.js version to
24.22.1. -
align global version restoration with collections (#18928) (d2ae5e6)
Continuation of
#13333. -
tanstack-start: up to 3x faster initial loads in dev (#18848) (7d60563)
Speeds up initial API and admin loads in development by up to 3x with
four optimizations: -
ui: prevent column toggles from flickering during navigation (#18830) (c4ad7a1)
Fixes the visible flicker when toggling columns on or off in the
TanStack dev server. This is not an issue in production builds.
๐ค Contributors
- German Jablonski (@GermanJablo)
- Jarrod Flesch (@JarrodMFlesch)
- Alessio Gravili (@AlessioGr)
- Jake Fletcher (@jacobsfletch)
- Patrik (@PatrikKozak)
- Jessica Rynkar (@JessRynkar)
- PINYO PATTANAWASANPORN (@PINYOPATTANAWASANPORN)
- Elliot DeNolf (@denolfe)
- Nate Lentz (@nathanlentz)
- Lazizbek Ergashev (@lazerg)
- Tylan Davis (@tylandavis)