Release Notes
Stay up to date with the latest Statamic changes.
To see what's in development, check out the roadmap.
6.29.0
August 25th, 2026
What's new
- Add a way to opt out of popper z-index control #15227 by @jaygeorge
- Add a "compact mode" for the array fieldtype #15219 by @jaygeorge
- Let sites check in from CLI, scheduler, and front-end requests #15208 by @jackmcdade
- Add safe option to to_json modifier #15260 by @edalzell
What's fixed
- Fix Antlers identifiers erroring before the parser has been resolved #15221 by @lazerg
- Support taggable comboboxes when
multipleis false #15064 by @duncanmcclean - Improve tooltips #15211 by @jaygeorge
- For links in tooltips, open them in a new tab if external #15213 by @jaygeorge
- Fix nocache TypeError when rendered outside a matched route #15215 by @lazerg
- Fix localized dates leaking into later template usages #15224 by @duncanmcclean
- Add missing tooltips to global header #15234 by @heidkaemper
- Augment nav blueprint fields onto manual-URL nav items #15235 by @lazerg
- Fix reordering a paginated orderable collection corrupting the tree #15238 by @marcorieser
- Fix nav entry links across sites losing their domain #15239 by @lazerg
- Ensure REST API authentication errors return consistent JSON #15077 by @daun
- Fix Link field's Asset mode height #15242 by @jackmcdade
- Encode asset URLs #15146 by @duncanmcclean
- Improve Asset fieldtype UI in smaller spaces #15243 by @jackmcdade
- Fix is_external for anchor, mailto and tel links in navs #15082 by @duncanmcclean
- Reduce publish form and Live Preview overhead #15251 by @jasonvarga
- Dedupe concurrent Control Panel asset requests #15252 by @jasonvarga
- Small PHP CP performance improvements and UTF-8 fix #15254 by @jasonvarga
- Bard server-side performance improvements #15258 by @jasonvarga
- Memoize the Replicator flattened sets config Blink key #15259 by @jasonvarga
- Resolve NoCache session via app() in StaticCaching hydrated callback #15256 by @petemolinero
- Memoize resolved field conditions #15262 by @jasonvarga
- Only generate Bard's HTML when reading time is enabled #15263 by @jasonvarga
- Avoid layout thrashing from Reka's aria-label fallback #15264 by @jasonvarga
6.28.0
August 19th, 2026
What's new
- Configurable live preview debounce duration #15150 by @FlxRobole
- Allow multi-column config layout in user globals #14994 by @daun
- Add option to reserve field space #14655 by @jaygeorge
What's fixed
- Fix save button hanging forever when a save hook fails #15194 by @jasonvarga
- Allow unique rule validation messages to be overridden at the app level #15197 by @duncanmcclean
- Deprecate the
themetag #15200 by @duncanmcclean - Return the fallback when reading a file from a disk that throws #15185 by @duncanmcclean
- Fix ensuring config on fields from imported fieldsets #15187 by @duncanmcclean
- Don't save group-inherited roles as explicit roles #15188 by @duncanmcclean
- Fix
uriindex for new entries in orderable collections #15189 by @duncanmcclean - Give nested sets and rows new ids when duplicating #15190 by @duncanmcclean
- Multisite improvements - entry vs global #15191 by @jaygeorge
- Multisite - turn stacked sites into a table view for larger viewports #15202 by @jaygeorge
- Fix Checkbox & Radio label click capturing and useId prop binding #15139 by @ibrokemycomputer
- Fix toasts being replayed on partial reloads #15210 by @heidkaemper
- Resolve dictionary fieldtype permissions via the CP guard #15209 by @duncanmcclean
- Improve info icons in grid headers #15218 by @jaygeorge
- Allow Inertia v3 alongside v2 #15065 by @duncanmcclean
- French translations #15193 by @ebeauchamps
- Add Italian translations #15195 by @sbellesis
6.27.2
August 12th, 2026
What's fixed
- Hash URL in static caching lock key #15061 by @david-windsock
- Tighten get modifier #15138 by @jasonvarga
- Harden SVG sanitization #15137 by @jasonvarga
- Fix CP nav breaking when a form has no title #15144 by @jasonvarga
- Fix template scanning on Windows junctions #15145 by @jasonvarga
- Tighten Antlers variable path resolution #15154 by @jasonvarga
- Fix page tree border radius #15157 by @jaygeorge
- Some CSS rendering performance optimisations #15156 by @jaygeorge
- Update
extraValuesstate inPublishContainerwhen prop is updated #15159 by @duncanmcclean - Resolve
@statamic/cmstypes under legacy module resolution #15160 by @duncanmcclean - Respect collection permissions in the navigation page selector #15163 by @jasonvarga
- Fix non-localizable button group fields being editable in localizations #15151 by @lazerg
- Serve HEAD requests from the static cache #15168 by @lazerg
- Make form email view fields clearable #15167 by @lazerg
- Optimize site loading with hundreds of sites #14988 by @lazerg
- Use a unique temporary path when reading image attributes #15171 by @duncanmcclean
- Keep marked and DOMPurify out of the front-end helpers bundle #15174 by @lazerg
- Add min and max validation rules when configured as zero #15175 by @duncanmcclean
- Fix count() TypeError when entries collections config is a string #15177 by @jackmcdade
- Bump pdfjs-dist from 5.6.205 to 6.2.108 #15141 by @dependabot
- Bump the npm_and_yarn group across 1 directory with 2 updates #15153 by @dependabot
6.27.1
August 7th, 2026
What's fixed
- Fix hidden fieldtypes ignoring their field conditions #15132 by @lazerg
- Fix users select dropdown not searching by email #15128 by @edalzell
- Exclude private (
$__) variables from cache context to resolve serialization exception #15130 by @martyf - Fix Combobox trigger classes not reacting to prop changes #15133 by @duncanmcclean
- Reset memoized Stache state between jobs instead of disabling it process-wide #15126 by @edalzell
- Fall back to the default site when
sites.yamlis empty #15135 by @lazerg - Prevent reordering from showing a false badge on the filter button #15079 by @lazerg
6.27.0
August 5th, 2026
What's new
- Add config to disable
HandleEntrySchedulejob #15103 by @duncanmcclean - Ability to configure search index update job timeout #15093 by @edalzell
- Add config for textarea fieldtype rows #15100 by @jackmcdade
- Export Inertia's
usePagecomposable via@statamic/cms/inertia#15123 by @duncanmcclean
What's fixed
- Prevent errors when Stache indexes contain keys without files #15052 by @joshuablum
- Handle download responses in Inertia requests #15050 by @duncanmcclean
- Prevent bogus content when dragging inside a node-selected Bard set #15049 by @duncanmcclean
- Use correct types in Tags class #15059 by @daun
- Use correct parameter name in Scope class #15060 by @daun
- Resolve delete redirects from the configured CP route #15107 by @lazerg
- Ensure fields are added to the first section of a tab instead of the last #15091 by @mynetx
- Stop re-checking index existence on every Algolia write #15090 by @edalzell
- Add autocomplete attribute to confirm password screen #15101 by @mytchallb
- Bundle Control Panel icons into a single chunk #15112 by @duncanmcclean
- Fix Outpost rate limiting #15114 by @duncanmcclean
- Don't navigate between assets when typing in a field #15111 by @duncanmcclean
- Fall back to default site on password-protected sites #15086 by @daun
- Revert throw on mixed pipe/shorthand modifier syntax #15073 by @marcorieser
- Remove stale
@paramfromwildcard()docblocks #15119 by @darkdi - Fix
@paramnames that do not match the signatures #15120 by @darkdi - Only preload meta for the selected link type #15113 by @duncanmcclean
- Prevent blueprint field rows from overflowing #15122 by @duncanmcclean
- Move testing traits into
Statamic\Testing\Concerns#15115 by @duncanmcclean - Use standard console output helpers in commands #15092 by @duncanmcclean
- Fix Eloquent user data setting roles and groups as model attributes #15125 by @lazerg
- Fix Link fieldtype preventing Cmd+S keyboard shortcut in Entry mode #14986 by @lazerg
- French translations #15094 by @ebeauchamps
- Fix typo in Dutch translation for 'Move to Folder' #15121 by @Skullsneeze
- Bump the github-actions group across 1 directory with 2 updates #15080 by @dependabot
- Bump svgo from 3.3.3 to 3.3.4 #15071 by @dependabot
- Bump the npm_and_yarn group across 1 directory with 4 updates #15110 by @dependabot
6.26.0
July 21st, 2026
What's new
- Add support for custom link types #15004 by @duncanmcclean
- Add support for public dictionaries #15029 by @duncanmcclean
What's fixed
- Harmonize label customization config text #15034 by @duncanmcclean
- Fix Custom Invalidator background recache #15031 by @marcorieser
- Fix grid min_rows breaking CP navigation #15033 by @duncanmcclean
- Do not hide the primary save button for mobile #15041 by @jaygeorge
- Show an entry selector when filtering by an entries field #15043 by @duncanmcclean
- Fix customized listing columns being overridden by default preferences #15040 by @mynetx
- Fix origin() on null when fetching nav tree with origin_id field #15042 by @duncanmcclean
- Pass field prefix to custom conditions #15044 by @duncanmcclean
- Ensure application cache honours static_cache store #15045 by @ryanmitchell
- German translations #15036 by @helloDanuk
- Bump the github-actions group with 2 updates #15032 by @dependabot
- Bump axios from 1.16.0 to 1.18.1 #15038 by @dependabot
6.25.0
July 17th, 2026
What's new
- Allow taxonomy create button customization #14997 by @efc
- Make Files fieldtype temporary upload storage configurable #14733 by @duncanmcclean
- Support Glide 4 and Intervention Image 4 #15019 by @joshuablum
What's fixed
- Hide permissions covered by a broader permission #14970 by @jasonvarga
- Prevent vertical focus clipping on listing pages #14978 by @jaygeorge
- Fix Control Panel not scrolling to top on navigation #14965 by @duncanmcclean
- Fix video thumbnail generation logging an error on success #14971 by @lazerg
- Preserve unregistered permissions when saving a role #14975 by @jasonvarga
- Use form handle in key #14974 by @edalzell
- Improve recursive behavior when using route data in computed values #11855 by @JohnathonKoster
- Fix global variables being lost when migrated alongside addon update scripts #14963 by @duncanmcclean
- Fix filter badge showing the term title in the wrong site #14973 by @lazerg
- Pass the configured index name to the search insert job #14949 by @ajnsn
- Hide unauthorized sections in nav #14990 by @lazerg
- Fix English CP locale showing fallback locale translations #15000 by @jasonvarga
- Fix performance issue when duplicating entries in large collections #14995 by @duncanmcclean
- Update site:clear config stubs to match current defaults #14991 by @lazerg
- Fix error on out-of-range pagination page number #14981 by @mynetx
- Fix malformed URLs with duplicate leading slashes resolving to home page #14982 by @lazerg
- Throw parser error when mixing pipe and shorthand modifier syntax #14892 by @marcorieser
- Fix link fieldtype ignoring sometimes validator #14985 by @lazerg
- Fix range date fields ignoring the configured timezone on save #15001 by @lazerg
- Fix stache:refresh flattening structured collection trees #15003 by @mynetx
- Fix save crash after deleting a Bard set containing a hidden field #15008 by @werner-freytag
- Update link to permission docs #15012 by @duncanmcclean
- Fix nested Bard data loss when reordering sets #15013 by @mynetx
- Fix toasts breaking when sessions are serialized as JSON #15015 by @mynetx
- Fix runtime assignment in a partial blanking a later partial's slot #15014 by @mynetx
- Fix Replicator field labels hidden when nested in Grid #14987 by @lazerg
- Fix blueprint assignment of entries using custom entry class #15017 by @daun
- Fix session-expiry modals being dismissible and silently re-extending sessions #15020 by @jasonvarga
- Fix validation rules being lost when saving without pressing enter #15022 by @mynetx
- Fix search:update ignoring the index argument when index names are customized #15024 by @edalzell
- Fix errors rendering blueprints & publish components when logged out #15027 by @duncanmcclean
- Fix control panel text direction on RTL sites #15023 by @jasonvarga
- Bump ws from 8.20.0 to 8.21.1 #15011 by @dependabot
6.24.2 Security
July 8th, 2026
What's fixed
- Convert date bindings to app timezone in raw SQL dump #14937 by @marcorieser
- Fix errors when a structure tree contains a null item #14941 by @mynetx
- Fix timezone handling in
whereDateandwhereTime#14940 by @marcorieser - Fix dictionary single-select showing the raw id instead of the label #14935 by @mynetx
- Do not set the Inertia root view globally #14942 by @lazerg
- Fix asset filters not applying the first time #14943 by @duncanmcclean
- Prevent the focus box on filters from being clipped #14953 by @jaygeorge
- Fix incorrect update badges in the Control Panel updater #14890 by @aaronbushnell
- Fix global variable references not resolving through the data repository #14938 by @lazerg
- Tighten front-end form upload validation #14958 by @jasonvarga
- Escape submitted values in automagic email #14959 by @jasonvarga
- Fix broken asset reference when discarding a duplicate upload #14947 by @lazerg
- Fix relationship-based fields showing raw ids after saving #14948 by @mynetx
- Fix Bard set disappearing after save #14956 by @eminos
6.24.1
July 3rd, 2026
What's fixed
- Do not show a disabled cursor for start/end of pagination #14921 by @jaygeorge
- Fix Bard link entry selector not showing pre-selected entry #14917 by @duncanmcclean
- Fix required validation on empty code fields #14918 by @duncanmcclean
- Fix fieldtype picker showing wrong list after switching blueprint modes #14919 by @duncanmcclean
- Fix roles/groups select being empty for non-super users #14889 by @mynetx
- Fix Glide route double slash for path-prefixed sites #14908 by @lwekuiper
- Fix amber and default badge button hover background shade #14924 by @lazerg
- Default the create user wizard super toggle to false #14927 by @stoffelio
- Fix progress bar triggering excessive recursion #14931 by @jasonvarga
- French translations #14926 by @ebeauchamps
6.24.0 Security
July 1st, 2026
What's new
- OAuth Improvements #14899 by @jasonvarga
- Add JSON language modes to code editor #14904 by @daun
What's fixed
- Remove
v6.subdomain from documentation links #14870 by @duncanmcclean - Define emits in
PublishActionscomponent #14872 by @duncanmcclean - Style the list of blueprints as badges instead, improving legibility #14878 by @jaygeorge
- Prevent browser re-sort of dictionary options with integer keys #14875 by @helloiamlukas
- Improve the customize columns button layout so it no longer clashes with overflowing filters #14885 by @jaygeorge
- Fix kebab-cased props not binding on Blade components in Antlers #14891 by @marcorieser
- Tolerate a folded X-Statamic-Pagination header when warming #14882 by @mynetx
- Fix icon fieldtype error when stored icon is missing #14881 by @mynetx
- Fix user wizard authorization check #14905 by @jasonvarga
- Pass active query scope handles to relationship index scopes #14883 by @mynetx
- Fix nav authorization checks #14906 by @jasonvarga
- Fix stale Stache entry order when reordering structured collection #14896 by @joshuablum
- Tighten up dynamic method resolution #14911 by @jasonvarga
- Bump actions/checkout from 6.0.3 to 7.0.0 in the github-actions group #14894 by @dependabot
6.23.0
June 23rd, 2026
What's new
What's fixed
- Prevent rare case of the container scrolling when focusing on the container #14854 by @jaygeorge
- Handle linked field comboboxes when the text is long #14863 by @jaygeorge
- Prevent the link field group from exceeding 50% of the container #14864 by @jaygeorge
- Apply as-config prop to top-level container only #14855 by @daun
- Hide "Live Preview" button while live preview is active #14866 by @duncanmcclean
- French translations #14856 by @ebeauchamps
6.22.0
June 19th, 2026
What's new
- Chips #14766 by @jaygeorge
- Crop images server-side #14841 by @jasonvarga
What's fixed
- Give precognitive form requests a separate rate limit bucket #14810 by @jasonvarga
- Fix nested Bard data loss when editing a set #14808 by @joshuablum
- Always render Control Panel exceptions as JSON for XHR requests #14812 by @jasonvarga
- Make the whole radio/checkbox item clickable #14821 by @duncanmcclean
- Fix mobile nav button failing #14673 by @jaygeorge
- Render asset editor video player with dimensions #14813 by @daun
- Handle external links in empty-state component #14814 by @daun
- Fix inconsistent dark mode text colours #14830 by @jaygeorge
- Autopopulate email on password reset form #14834 by @jackmcdade
- Avoid loading the revisions store when finding a working copy #14847 by @jasonvarga
- Retain current tab hash in URL when switching localization #14846 by @duncanmcclean
- Translate untranslated CP page titles #14848 by @jasonvarga
- Don't show selection checkboxes when bulk actions are disabled #14850 by @jasonvarga
- Avoid widget table overflow #14851 by @daun
- German translations #14818 by @helloDanuk
- Bump the github-actions group with 2 updates #14817 by @dependabot
- Bump vite from 8.0.7 to 8.0.16 #14824 by @dependabot
- Bump form-data from 4.0.5 to 4.0.6 #14825 by @dependabot
- Bump markdown-it from 14.1.1 to 14.2.0 #14827 by @dependabot
- Bump dompurify from 3.4.0 to 3.4.9 #14826 by @dependabot
- Bump esbuild and storybook #14828 by @dependabot
- Bump dompurify from 3.4.9 to 3.4.11 in the npm_and_yarn group across 1 directory #14845 by @dependabot
6.21.0
June 10th, 2026
What's new
- Add default sorting support for taxonomies #14772 by @finnjsmith
- Add default initial option configuration option for Link fieldtype #14698 by @martyf
- Add
excludeparam to stache commands #14788 by @edalzell
What's fixed
- Fix Modify::__toString() throwing TypeError for non-string scalar values #14674 by @VerburgtJimmy
- Speed up Stache warming for large structured collections #14781 by @o1y
- Implement permissions cache on eloquent users #14661 by @ryanmitchell
- Adjust listing skeleton to match configured features #14796 by @daun
- Fix docs for
Listingcomponent #14798 by @duncanmcclean - Don't reserve space when a field's display label is hidden #14803 by @jasonvarga
- Bump web-auth/webauthn-lib to ^5.3.0 #14727 by @sstraakenbroek
- Prevent overlapping git commit jobs #14672 by @aerni
- French translations #14789 by @ebeauchamps
6.20.3 Security
June 8th, 2026
What's fixed
- Trigger the grid table mode at lower viewports because it's more useful #14792 by @jaygeorge
- Fix permission for Live Preview #14791 by @jasonvarga
6.20.2
June 5th, 2026
What's fixed
- Fix GraphiQL #14770 by @joshuablum
- Fix TypeError when elevated_session_duration is a string #14771 by @duncanmcclean
- Fix asset selection in Markdown fieldtype #14715 by @duncanmcclean
- Fix configure navs permission not working properly #14775 by @joshuablum
- Resolve Entry::descendants() N+1 query #14773 by @SteveEdson
- Fix asset editor prev/next buttons and "Edit Image" button in Bard #14728 by @joshuablum
- Apply regenerate handle pattern for replicator sections #14745 by @jaygeorge
- Fix static cache invalidation stripping trailing slashes #14713 by @duncanmcclean
- Add impersonation permission description #14776 by @jasonvarga
- Fix field filters returning all results when filtering by 0 #14747 by @joshuablum
- Render PDF viewer pages lazily #14764 by @daun
- Add support for Collection in last modifier #14778 by @JonKaric
- Fix share_errors breaking nocache regions on error responses #14780 by @joshuablum
- Fix date picker inconsistencies #14732 by @jaygeorge
- Avoid version inertia prop #14783 by @jasonvarga