What's new with TinaCMS
Version 3.9.4
Released on 7/1/2026
Patch Changes
- @isaaclombardssw-
feat(tinacms): add a back-to-collection breadcrumb on the admin editor/create pages and in the visual editor sidebar, switch the breadcrumb separator from a chevron to a slash, show only the filename (not the full folder path) in the root breadcrumb across both editors, and truncate long crumbs so the trail no longer overflows
- @isaaclombardssw-
Improve global collection UX: global collections now appear once in the sidebar "Site" section (globe icon) instead of being duplicated under Collections, open directly in the form instead of a popup modal, and single-document global collections skip the document list and go straight to the form. Global collections with zero or multiple documents fall through to the normal list view.
- @wicksipedia-
Move `moment-timezone` to devDependencies so its timezone database no longer ships in the admin bundle. It was loaded via a non-tree-shakeable side-effect import, but production code never used the `moment.tz` API (only a unit test did). Removes ~39 KB gzip (~732 KB uncompressed) from the first admin load. No behavior change.
- @wicksipedia-
Remove the dead `mdx-field-plugin/plate/plugins/ui/icons.tsx` module (398 lines of unused inline-SVG icons). Its single consumed export (`EllipsisIcon`) now resolves from the shared `plate-ui/icons` module. No behavior change.
- @wicksipedia-
Standardize date handling on date-fns and remove the moment stack. `@tinacms/graphql` moves to date-fns v4 (collapsing the previous v2/v4 split), and `tinacms` drops `moment`, `moment-timezone`, and `react-datetime`. The date-field display label now formats with date-fns via a non-breaking moment→date-fns token converter, so existing `dateFormat`/`timeFormat` schemas (moment token syntax) keep working unchanged. Also removes the orphaned vendored react-datetime views. Net effect: the admin bundle no longer ships moment (~18.6 KB gzip smaller first load).
Version 3.9.3
Released on 6/15/2026
Patch Changes
- @Aibono1225-
Fix crash when reopening Global Configuration after navigating to a collection in the admin
Version 3.9.2
Released on 6/15/2026
Updated Dependencies
@tinacms/search@1.2.18
Version 3.9.1
Released on 6/5/2026
Patch Changes
- @JackDevAU-
Skip the filesystem-backed response cache on edge runtimes (Cloudflare Workers, Vercel Edge) where Node's `fs` API is present but unusable, which could otherwise hang concurrent identical queries. Adds a `cache` option to `createClient` to force-disable the cache.
Version 3.9.0
Released on 6/3/2026
Minor Changes
- @18-th-
Support Tina media uploads and deletes in the editorial workflow on protected branches. Media changes now prompt for a branch, write to that branch, switch the editor to it after the media operation succeeds, and continue through indexing and pull request creation with the same workflow progress UI as content edits.
Patch Changes
Version 3.8.4
Released on 6/1/2026
Patch Changes
Version 3.8.3
Released on 5/28/2026
Patch Changes
- @MirkaJuliet34-
Aligned rich text editor typography class names with the actual font used and updated related references.
Version 3.8.2
Released on 5/25/2026
Patch Changes
- @RonGamzu-
Fix typos: rename misspelled `notifiySubscribers` to `notifySubscribers` and correct "Error occured" to "Error occurred" in CLI error messages
- @isaaclombardssw-
chore(deps): upgrade react-router-dom from 6.3.0 to ^6.30.3 to resolve GHSA-9jcx-v3wj-wh4m (unexpected external redirect via untrusted paths)
Version 3.8.1
Released on 5/14/2026
Updated Dependencies
@tinacms/search@1.2.15
Version 3.8.0
Released on 5/12/2026
Minor Changes
- @kulesy-
Forward the editor's current branch to the TinaCloud assets-api on every cloud media call, and fix staging URL handling for multi-segment branches
Patch Changes
- @alhafoudh-
Fix crash in `getFieldGroup` when editing deeply nested rich-text fields (3+ levels) with templates. The method used `findIndex` which always searched from the start of the path array, causing it to resolve the wrong "children"/"props" segments on recursive calls. Replaced with `indexOf` searching from the current position, and added a null guard for graceful fallback on malformed content.