Release notes for Umbraco-CMS v17.4.0
Target release date: Thursday, May 14 2026
Contributors
Of the 104 bug fixes and feature additions in v17.4.0, a total of 28 of them have been contributed by the community, by 14 unique contributors.
We're welcoming 3 brand new contributors who have made their first pull request for Umbraco-CMS. Welcome to the contributor club: Lajos Vargyas, marcloveUSN, reabr 🏆
All community contributors to this release
0xRozier1 PR
Andreas Lykke Borg6 PRs
Callum Whyte2 PRs
Chris Houston2 PRs
Dirk Seefeld4 PRs
Henrik4 PRs
Johannes Lantz1 PR
Jose Marcenaro1 PR
⭐
Lajos Vargyas1 PR
Liam Laverty1 PR
marcloveUSN2 PRs
Markus Johansson1 PR
⭐
reabr1 PR
Yari Mariën1 PR
⭐ = First pull request to Umbraco-CMS
Notable features
1
#22338 Website Rendering: Add configurable output caching for template rendered pages
Breaking changes
1
#22307 Application URL: Add `ApplicationUrlDetection` setting to control application URL auto-detection
UI and UX updates
13
#22460 adds same drag styling as when dragging item in the content sectin
#22436 Icons: extends icon data + improved search
#22414 Frontend: Fix umb-table Firefox rendering when columns change (closes #22411)
#22298 Notifications: Surface ProblemDetails detail in error notifications
#22295 Templating: Add Production Mode condition to Partial View and Template Collection create actions
#22266 Tiptap RTE: Add width/height to edit image properties (AB#65981)
#22240 Search: Show ancestor breadcrumb path in items results (closes #21107)
#22214 Backoffice: Migrate Templating, Language, Member Group, and Document Blueprint create entity actions to use entityCreateOptionAction extensions
#22079 Localization: Added missing for elements
#21620 Drag placeholder for child node types in content type is not consistent with pickers
Other
89
#22514 Dependencies: Pin `System.Security.Cryptography.Xml` to resolve vulnerability warning
#22498 Dependencies: Update minor and patch versions
#22492 Parameterise variables in SqliteSyntaxProvider and SqlServerSyntaxProvider
#22482 Code Quality: Eliminate closure in `AppPolicedCacheDictionary`
#22476 Code Quality: Use array over dictionary in private collection of `PublishedContentType`
#22475 Code Quality: Use more appropriate types for private fields of `Umbraco.Cms.Core.Enum<T>`
#22456 Output Caching: Align Delivery API extensibility with website output caching
#22451 Cache: Invalidate published cache entries when content or media is trashed
#22447 dotnet Templates: Remove legacy `Umbraco:CMS:Content:MacroErrors` from project template development configuration
#22433 Umb-icon color setting optimization
#22428 General: Add decoding="async" to relevant IMG-tags
#22417 RTE: Block Clipboard label Localization (closes #22412)
#22410 Migrations: Quote names when creating index (closes #22409)
#22406 Migrations: Consistently handle GUID casing when using SQLite
#22403 Accessibility: Add labels to member workspace toggles
#22402 Accessibility: Add label and localized placeholder to picker search field
#22397 Accessibility: Add label to member type filter dropdown
#22386 Block Editor: Create Modal Size Overwrite
#22385 Accessibility: Fix missing labels on uui-select elements causing console warnings
#22375 Media Picker: Use UUI breadcrumbs to prevent modal overflow with deep folder paths (closes #22286)
#22373 Unit tests: Add test coverage for `ContentPermissionService`
#22343 CSP: Add `blob:` to img-src for media upload previews
#22330 Background Jobs: Fix period drift in RecurringHostedServiceBase
#22329 Performance: Batch backoffice media thumbnail URL requests to reduce N+1 API calls
#22320 Block Editors: Fix preset values for composition properties on non-varying element types (closes #22320)
#22317 Code Quality: Add 'new' keyword to 3 methods hiding inherited members resolving `CS0114` warnings
#22257 Cache sync: append SiteName to machine identifier for same-host load balancing
#22244 Media: Set width and height for uploaded SVGs
#22241 Members: Fix Create Members based on Member Types in folders
#22237 Backoffice: Remove token cookie if decryption fails (mitigates #16107)
#22236 Localization: Update "MFA" label to "2FA" in language files
#22230 True/False property default (checked) not rendering as checked in Block List element from composition
#22226 Management API: Add endpoint to get all member types allowed at root
#22212 EFCore Scoping: Preserve connection string before disposing `EFCoreScope` database (closes #22211)
#22188 Integration Tests: Avoid hidden `BootFailedException` in `CoreConfigurationHttpTests`
#22172 Entity Data Picker: Adds start node support to tree data-sources
#22146 Backoffice: Add tree item children collection views for Partial Views, Stylesheets, Scripts, Templates, and Document Blueprints
#22134 Block Editors: Resolves incorrect "Discard unsaved changes" message when editing blocks with live editing
#22104 Management API: Add document patch endpoint
#22075 Elements missing localizations
#21951 Document Blueprints: Add info workspace view
#21785 Code Documentation: Add missing XML header documentation to the `Umbraco.Cms.Api.Management` project
#21782 Code Documentation: Add missing XML header documentation to the `Umbraco.Cms.Infrastructure` project
#21781 Added length validation to change password modal element
#21771 Add JsonSchema support to the Management API for datatypes and contenttypes
#20929 Can't remove a template for a document (and can't save a document with a previously selected template that's no longer allowed on the document type)
#22348
Document Editing: Allow removal of template from a document and indicate when the selected template is no longer allowed (closes #20929)
#20292 Micro-optimization: Use Array.ConvertAll instead of LINQ .Select .ToArray