Statamic 6.41.0 adds a compact mode to the Assets fieldtype and new explorers in Cache Manager. It also brings a run of Stache and YAML speed-ups, plus a long list of fixes.
New in the Control Panel
Jack McDade built the compact mode for the Assets fieldtype, aimed at dense Grid and Replicator layouts. Selected assets show as small square thumbnails with replace and remove actions (#15819). Jack McDade also added page and image explorers to Cache Manager, with searchable lists and individual or bulk actions (#15844).
@el-schneider added a cp.after_save config option. Their pull request argues that saving should keep you on the same page rather than sending you to the listing (#15824).
For addon and app developers
Erin Dalzell added Statamic::hasBooted(), so code can tell whether Statamic's booted callbacks have already run before registering another one (#15823). Ryan Mitchell made the static warm job class configurable through static_caching.warm_job (#15800).
Faster Stache builds
Most of the performance work is in the Stache. Ryan Mitchell, built with Daniel Jones, added Statamic\Yaml\FastParser. In their benchmark in the PR, a cold Stache build of 2,000 Bard entries went from 2,226ms to 607ms (#15838).
Daniel Jones stopped the Stache keeping two copies of each entry in memory during a build. Their benchmark of a cold stache:warm on 9,000 entries went from 29.9 s to 23.6 s, and peak memory from 2,116 MB to 1,396 MB (#15795).
Ryan Mitchell also sped up Stache file traversal. Listing 20,000 entry files went from about 310ms to about 60ms in the PR (#15821).
Fixes worth knowing
php pleasecan find commands fromapp/Console/Commandsagain on Laravel 13.36 and newer, thanks to Lazizbek Ergashev (#15809).- Lazizbek Ergashev also fixed nocache pagination when
ignore_query_stringsis on (#15788) and the Stache watcher missing changes made right after a refresh (#15781). - Jan Henk Hazelaar fixed last login errors in apps that use
CarbonImmutable(#15793). bool_stringoutputsfalsefor null values again, from Jordan Partridge (#15782).- Duncan McClean made Outpost timeouts count as failed requests, so the Control Panel stops showing licensing alerts when statamic.com can't be reached (#15827).
- Jay George fixed Safari flashing on fast scrolling and clipped corners on publish section cards (#15831, #15834).
- @ionutrusenL fixed four Vue warnings (#15786, #15791, #15792, #15790).
Arabic translations came from Rez (#15785), Dutch from Wiegert Schouten (#15794) and German from Daniel Kaufmann (#15848).
Everything else in this release
The rest of the changelog, with a link to each change.
- Batch URL invalidation in the application static cacher (#15778), from Ryan Mitchell
- Reset Antlers interpolated variables between requests (#15815), from Lazizbek Ergashev
- Hide seconds in date picker timezone hover card unless enabled (#15804), from Joshua Blum
- Include unpublished entries in the command palette search (#15810), from Lazizbek Ergashev
- Keep listing columns when the response doesn't include any (#15801), from Duncan McClean
- Work out fieldtype config defaults once per request (#15805), from Daniel Jones
- Fix entry URIs going stale when a tree file changes on disk (#15798), from Daniel Jones
- Speed up cold Stache entry builds (#15826), from Ryan Mitchell
- Look up each tree page's entry once when building the CP tree (#15812), from Daniel Jones
- Build URLs for placeholder routes without creating an Antlers parser (#15841), from Daniel Jones
- Speed up Stache entry file filtering on multisite (#15825), from Ryan Mitchell
- Look term associations up instead of reading through all of them (#15846), from Daniel Jones
- Keep parsed blueprint and fieldset YAML between requests (#15813), from Daniel Jones
- Reuse the nav tag's tree when a nav is output more than once (#15845), from Daniel Jones
Sources
- Release v6.41.0 · statamic/cms · read 13 Nov 2026