Skip to content

Upgrading Umbraco.Cms.Web.Website 15 to 16

Breaking15.4.4 → 16.5.1Breaking33Security10Deprecated8New128Changed150Fixed436Other134

BreakingUpgrade verdict

33 breaking changes and 10 security fixes.

  • Renames setBrowserTitle to setTitle in View Context.
  • The appearance and color of the current user action are removed.
  • The old TinyMCE rich text editor is no longer included on the client side.
  • The server-side TinyMCE integration is removed.
Top 5 of 51 that need code or config changes
Breaking33
Renames setBrowserTitle to setTitle in View Context.
setBrowserTitlesetTitle
Removes the current user action look and color.
Removes TinyMCE (client-side).
TinyMCE
Removes TinyMCE (server-side).
TinyMCE
Removes the UmbracoPath setting.
UmbracoPath
Removes syslib003 and syslib0051 obsoleted code dependencies.
syslib003syslib0051
Removes RTE Stylesheets (client-side).
RTE Stylesheets
Removes the external base64-js module.
base64-js
Moves and renames the input-collection-configuration element to input-content-type-collection-configuration.
input-collection-configurationinput-content-type-collection-configuration
Splits Sort Children logic to remove an illegal import from core to packages.
Removes all generic Created, Saved, and Deleted notifications.
Removes non-controversial, straightforward obsoleted constructs for Umbraco 16.
Removes deprecated client-side code in V16.
Removes population of Urls on the document response model and obsoletes the property.
Urls
Further fixes configuration classes using ISet, resolving a regression with custom 404 pages.
ISet
Adds an explicit Global Search extension point.
Logs language ISO codes instead of language names.
Corrects context tokens for menu structure based workspaces.
Replaces legacy/fetch with @hey-api/client-fetch.
legacy/fetch@hey-api/client-fetch
Refactors settings arrays to ISet<T> to ensure unique values and make them easily mutable.
ISet<T>
Allows MaxRequestLength to be specified as a long.
MaxRequestLength
Adds AsyncMigrationBase, updates base classes and calls async methods.
AsyncMigrationBase
Changes get context to resolve as undefined if not found.
Moves public access files to the member-public-access module.
member-public-access
Internalizes the uuid package.
uuid
Adds server context to store information about paths.
Moves router-slot exports to @umbraco-cms/backoffice/router.
@umbraco-cms/backoffice/router
Introduces a content client package.
Splits media handling from UmbDropzoneManager.
UmbDropzoneManager
Refactors services to fully enable segments.
Context API can now unprovide contexts.
Retrofits ContentEditingBaseBuilder to match the new create/update models.
ContentEditingBaseBuilder
Makes culture specific update dates work again.
Security10
Fixes a privilege escalation issue relating to user group memberships.
Fixes an XSS vulnerability involving property type descriptions.
Fixes authorization checks on node domain access.
Marks the UMB-DEBUG cookie as HttpOnly and Secure in debug mode.
UMB-DEBUG
Moves backoffice access and refresh tokens to secure cookies, disabled by default for backwards compatibility.
Umbraco:Cms:Security:BackOfficeTokenCookie:Enabled
Redacts back-office PKCE codes from the server.
Fixes an issue where the Delivery API could return cached requests with an invalid API key.
Delivery API
Fixes code scanning alert no. 1719 for client-side cross-site scripting.
Bumps ImageSharp to prevent CVE-2025-27598.
ImageSharp
Adds webhook log authorization and file system path checks.
Deprecated8
Adds deprecation notices to AllowNonExistingSegmentsCreation.
AllowNonExistingSegmentsCreation
Marks MemberService.GetMembersByPropertyValue() methods as obsolete.
MemberService.GetMembersByPropertyValue()
Updates openapi-ts client and deprecates tryExecuteAndNotify.
tryExecuteAndNotify
Adds obsoletion messages for unused interface and implementation for cache rebuilds.
Deprecates UmbPropertyValueChangeEvent for v16.
UmbPropertyValueChangeEvent
Obsoletes a few unused things.
Deprecates the getManifest() methods.
getManifest()
Removes population of Urls on the media response model and obsoletes the property.
Urls