Skip to content

Release history

Umbraco releases

The friendly CMS. Free and open source with an amazing community.

All releases

45 shown

No immediate action
release-17.4.2 Bug fix

Cache contention fix + DB hit reduction

No immediate action
release-17.4.1 Bug fix

Caching & slider fixes

Config change
release-17.4.0 Breaking risk
Auth

Application URL detection

release-17.3.5 Bug fix

Reverted the read‑only block editor fix to resolve regressions in multi‑lingual block editing.

Full changelog

What's Changed

🐛 Bug Fixes

  • Revert fix for making block editors read-only in trashed documents which causes a regression in certain multi-lingual block editing scenarios (closes #22472, re-opens #21982) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/22656

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.3.4...release-17.3.5

release-13.14.0 Security relevant
Security fixes
  • Surface controllers now validate redirect URL in member operation surface controllers — closes a potential redirection abuse vector.
Full changelog

What's Changed Since 13.14.0-rc3

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.14.0-rc3...release-13.14.0

What's Changed Since 13.14.0-rc2

🔒 Security Hardening

  • Surface controllers: validate redirect URL in member operation surface controllers by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/22565

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.14.0-rc2...release-13.14.0-rc3

What's Changed Since 13.14.0-rc1

📦 Dependencies

  • Dependencies: Pin System.Security.Cryptography.Xml to resolve vulnerability warning (Umbraco 13) by @crixlis
    in https://github.com/umbraco/Umbraco-CMS/pull/22513

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.14.0-rc...release-13.14.0-rc2

What's Changed Since The Previous Version (13.13.1)

🚤 Performance

  • Backport optimisations on content type save from #21910 to V13 by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/22314

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.13.1...release-13.14.0-rc

release-17.3.4 Bug fix

Fixed migrations failure when data violates a foreign key or check constraint.

Full changelog

What's Changed

🐛 Bug Fixes

  • Migrations: Fix RetrustForeignKeyAndCheckConstraints failing when data violates a constraint
    by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22488

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.3.3...release-17.3.4

release-17.3.3 Bug fix

Fixed a bug that prevented the User Service from incorrectly fetching all permissions when no IDs were provided.

Full changelog

What's Changed

🐛 Bug Fixes

  • User Service: Prevent fetching all permissions when no IDs are provided by @krebil in https://github.com/umbraco/Umbraco-CMS/pull/22424

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.3.2...release-17.3.3

release-17.3.2 Bug fix

Fixed OAuth client registration retry logic and prevented OptimizeInvariantUrlRecords timeout on SQL Server.

Full changelog

What's Changed

🐛 Bug Fixes

  • Templating: Move production mode validation from service layer to Management API by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22383
  • Migrations: Fix potential OptimizeInvariantUrlRecords timeout on SQL Server (closes #22377) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22382
  • Management API: Fix OAuth client registration permanently skipped after transient failure (closes #22356) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22368
  • Property Editor Dialog: Set height to 100% for umb-property-editor-ui-picker-modal by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/22354

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.3.1...release-17.3.2

release-17.3.1 Bug fix

Fixed a regression that prevented developers from selecting folders in the Media Picker.

Full changelog

What's Changed

🐛 Bug Fixes

  • Document URL Service: Batch delete of obsolete URL segment records to avoid SQL Server parameter limit (closes #22339) by - @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22340
  • Builder Extensions: Make AddWebComponents() idempotent (closes #22344) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22347
  • Media Picker: Fix folder selection regression for developer-configured media pickers (closes #22349) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22350
  • Install: Ensure media directory exists before creating PhysicalFileProvider (closes #14877) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22281

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.3.0...release-17.3.1

release-17.3.0 Breaking risk
⚠ Upgrade required
  • Review custom URL providers for redirect handling changes; rare cases may require adjustment.
  • Auto‑generated HMAC secret key is enabled only for new installs; upgrades must configure it manually if desired.
Breaking changes
  • Dependencies: Update MailKit to 4.15.1
Security fixes
  • Dependencies: Update MailKit to 4.15.1 — fixes a security vulnerability present in the previously used version
Notable features
  • Templates now support optional Central Package Management
  • Service registration allows running Umbraco with flexible combinations of backoffice, website, and delivery API
  • Imaging configuration auto‑generates HMAC secret key for new installs
Full changelog

Upgrade Notes

In 17.3 we have upgraded our dependency on MailKit to 4.15.1. This is a minor version update, but we found a few changes we had to make in core to accommodate changes to nullability constraints. Unless using methods of this library, or it's transitive dependency MimeKit, it's unlikely projects will be affected. The update is necessary though, as the version we previously depended on now has a security vulnerability raised against it.

We have made a change to how we handle redirects which brings a significant performance improvement for publish time on large sites, when documents with many descendent nodes are published. If you have custom URL providers you should review this change, as there are some very rare cases where you'll need to adjust to ensure descendent redirects are correctly handled.

Note also that we now auto-generate HMAC secret key for new installs. This has been applied to make Umbraco more secure by default, but it's not been forced for upgrades.

What's Changed Since 17.3.0-rc3

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.3.0-rc3...release-17.3.0

What's Changed Since 17.3.0-rc2

📦 Dependencies

  • Dependencies: Update Microsoft packages to latest patch and fix HybridCache ParseFault with Redis by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22278

🐛 Bug Fixes

  • Examine: Fix DocumentUrlService not initialized during Examine indexing after package upgrade by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22243
  • Unattended Upgrades: Rebuild routing caches after background migrations to fix unrouteable document URLs by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22269
  • Migrations: Fix NPoco auto-select breaking re-trust FK migration by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22270

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.3.0-rc2...release-17.3.0-rc3

What's Changed Since 17.3.0-rc1

🐛 Bug Fixes

  • Migrations: Fix re-trust constraints migration targeting non-Umbraco tables and transaction failure (closes #22227) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22229
  • Distributed Locking: Add ROWLOCK hint to prevent cross-row contention on umbracoLock table (closes #22113) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22126
  • Application URLs: Prevent back office hosts being overwritten in a shared database setup (closes #16741) by @matthewcare in https://github.com/umbraco/Umbraco-CMS/pull/22160
  • Migrations: Fix property detection for invariant content types with culture-varying compositions (closes #22159) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22167
  • Migrations: Fix package migrations not running after fresh install with packages (closes #22202) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22204

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.3.0-rc...release-17.3.0-rc2

What's Changed Since the Previous Version (17.2.2)

🙌 Notable Changes

  • Templates: Add optional Central Package Management support to UmbracoProject and UmbracoExtension templates by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21641
  • Service registration: Allow running Umbraco with different combinations of backoffice, website and delivery API (closes #21622) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21630
  • Imaging Configuration: Auto-generate HMAC secret key for new installs by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21976
  • Migrations: Run unattended upgrades in background, add liveness/readiness health probes (closes #21987) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22020

💥 Breaking Changes

  • Dependencies: Update MailKit to 4.15.1 by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22028

📦 Dependencies

  • Bump lodash from 4.17.21 to 4.17.23 in /tests/Umbraco.Tests.AcceptanceTest in the npm_and_yarn group across 1 directory by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/21519
  • Bump the npm_and_yarn group across 2 directories with 2 updates by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/21754
  • Bump qs from 6.14.1 to 6.14.2 in /src/Umbraco.Web.UI.Client in the npm_and_yarn group across 1 directory by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/21755
  • Dependencies: Bumps @umbraco-ui/uui from 1.17.0 to 1.17.1 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/22029
  • Dependencies: Updates @umbraco-ui/uui to 1.17.2 to fix multiple folder drag-and-drop failing (closes #21837) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21886
  • Backoffice: Update vite from 7.1.11 to 7.3.1 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/22065
  • Dependencies: Update server-side dependencies to latest patch or minor releases by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21860

🚤 Performance

  • Performance: Implement key-based caching for data type and template repositories by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21280
  • Management API: Optimize collection view performance by eliminating N+1 patterns by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21684
  • Performance: Optimize handling of content type updates by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/21910
  • Backoffice Performance: Add inflight request deduplication to item data request managers by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21767
  • URL and Alias Caches: Optimize for invariant documents by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21558
  • Custom Views: Prevent re-rendering Block Views and Properties by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/21186
  • Core: Minimize await to a single JS cycle (refactor #21186) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/22074
  • Auth: Skip /token refresh when access token is still valid by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/22087
  • Memory Management: Dispose IDisposable resources correctly in four internal classes by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22014
  • Redirect Tracking: Fix segment change detection and optimise descendant traversal (closes #22082) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22091

🌈 Accessibility Improvements

  • Entity Actions: Adds a descriptive title to the first action so you know what it does by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21739
  • Search field: Added aria-label and name to search input for accessibility (closes #21938) by @andreaslborg in https://github.com/umbraco/Umbraco-CMS/pull/21962
  • List view: Added labels entity bulk action buttons by @andreaslborg in https://github.com/umbraco/Umbraco-CMS/pull/21964
  • Accessibility: Add title attributes to buttons in block list entry and property editor UI by @manutdkid77 in https://github.com/umbraco/Umbraco-CMS/pull/21842
  • Accessibility: Add tooltips to block grid entry actions by @manutdkid77 in https://github.com/umbraco/Umbraco-CMS/pull/21958
  • Accessibility: Added title attribute for icon in content types by @TechPdo in https://github.com/umbraco/Umbraco-CMS/pull/21956

🚀 New Features

  • Tiptap RTE: Add delete action support for RTE blocks (closes #21345) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21615
  • Tiptap RTE: Add clipboard copy/paste support for RTE blocks (closes #21345) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21604
  • Imaging: Intelligent format detection for thumbnail generation by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21570
  • Tiptap RTE: Adds actionButton kind for toolbar extensions (closes #21682) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21703
  • Management API: Add endpoints, service and repository methods for retrieving the allowed parents for content types by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/21586
  • Block List/Grid: Add "Clear" property action. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21436
  • Collection: Add description support to default collection item card and ref elements by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21654
  • Block Editor: Implements hints for Tabs (fixes #21178) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21672
  • Textbox/area: Add character countdown message (closes #19505) by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21722
  • Document Collection: Enable Entity Actions on cards by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21802
  • Media Collection: Introduce Entity Actions for cards by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21816
  • Entity Data Picker: Add text filter feature toggle for Collection Data Sources by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21732
  • Image cropper and file upload: Implemented automatic naming of uploaded file (closes #21764) by @TechPdo in https://github.com/umbraco/Umbraco-CMS/pull/21775
  • Entity Signs: Enable entity signs for media items (closes #21786) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21832
  • Management API: Add document and data types tree search endpoints by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/21628
  • Members: Enable sorting on member table and order member groups by name (closes #21960) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21963
  • Management API: Add item ancestors endpoints returning item response models by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21874
  • Collection Views: Add sortable value column for custom property sorting (closes #21425) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21479
  • Entity Data Picker: Add configurable Picker Views for Collection Data Sources by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21738
  • Account login: Separate AllowConcurrentLogins settings for users and members (closes #21667) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21940
  • Link Picker, RTE: Support linking to a specific culture by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21466
  • Management API: Add batch read endpoints for Document Types, Media Types, Member Types, and Data Types by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21565
  • Extension: Introduce extension core module and umb-input-extension element by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21705
  • Condition: is-routable-context-condition by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21428

🐛 Bug Fixes

  • Upload Field: Show filename after file upload (closes #21587) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21887
  • Media Picker: Allow folder selection in media entity picker (closes #21885) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21895
  • Media: Mark touchstart handler as non-passive using @eventOptions decorator by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21845
  • Repositories: Use FirstOrDefault over ExecuteScalar for GUID and nullable types (closes #21448) by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/21552
  • Content Type Designer: transfer root properties when creating first tab. by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21582
  • TipTap: Avoid empty target attribute on links by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21572
  • Repositories: Quote table, column and alias names (closes #21451) by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/21577
  • Duplicate to: switch to split icon by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21616
  • External Login Providers: Fixes deleting a member with more than 1 external login provider causes an error by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/21625
  • OEmbed providers: Tighten up resource URL matching for providers by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21583
  • Picker: Add pagination to search results by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21593
  • Block Catalogue: Adaptive modal size based on the amount of Block Types by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21619
  • Block Editors: UX Flow when creating one block / block with no content properties / inline editing by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20836
  • Enable usage of umb-input-entity-data element without registering a propertyEditorDataSource. by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21686
  • Configuration: Add UserPassword and MemberPassword properties to SecuritySettings for appsettings.json intellisense (closes #21657) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21681
  • Package Manifest: Enable cache buster token replacement for extensions (closes #16893) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21709
  • Delivery API: Make the Delivery API "access" attributes public (closes #21677) by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/21760
  • Razor Template Debugging: Allow Umbraco projects to work with the Razor cohosting editor by @davidwengier in https://github.com/umbraco/Umbraco-CMS/pull/21861
  • Create new folder on enter in media picker by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20648
  • User History: Improve recent history display with better labels and de-duplication by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21656
  • Member Group Picker: Add server-side paging to public access modal (closes #21790) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21834
  • Move/Duplicate: Filter tree picker based on allowed parent rules. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21646
  • Backoffice Search: Default global search to current section (closes #21621) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21636
  • Templating: Prevent editing of templates and partial views in production runtime mode (closes #21564) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21600
  • Media Picker: Allow custom folder types when creating inline folders (closes #21850) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21959
  • Health Checks: Add check for imaging HMAC secret key by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21991
  • Configuration: Make MainDom acquisition timeout configurable by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22013
  • Backoffice: Add CSP nonce support for inline scripts (closes #21575) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21581
  • Media Picker: Show friendly inline validation error when uploading a file with required media type properties (closes #20295) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22025
  • Backoffice: Export block-single package for external consumers (closes #22044) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22045
  • Management API: Add server-side validation preventing element types from varying by segment (closes #21643) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21728
  • Account login: Enforce AllowConcurrentLogins for backoffice users and members by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21928
  • External Login Providers: Set SignOutRedirectUrl on backoffice sign-out to support external OIDC provider logout (closes #21854, #16869) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21952
  • Referenced Items: Prevent move to recycle bin when referenced and DisableDeleteWhenReferenced is enabled (closes #21986) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21999
  • Media Item Search: Fixing missing attribute for constructor by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/21659
  • Extension Insights: Fix collection by avoiding shallow copy of manifests by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21660
  • Collection: Fix undefined take in collection filter and hide pagination when all items are shown by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21662
  • Block Editors: Sync Validation Messages when in Inline Mode (Fixes #21518) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21669
  • 21599: Removed the icon from redirect URL dashboard as per request in… by @TechPdo in https://github.com/umbraco/Umbraco-CMS/pull/21665
  • Content Type Properties: make content type property responsive by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21559
  • Block Grid Editor: adjust styling of default Grid Block views (Fixes #16375) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21685
  • Block Grid Editor: improved extension initialization for Inline Mode Blocks by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21661
  • User Management: Avoid discard changes dialog after enabling/disabling a user (closes #19019) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21702
  • Long Running Operations: Increase type column length and handle rebuilds of Examine indexes with long names (closes #21666) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21715
  • Repositories: Fix GetAllContentTypeIds query on content type to generate correct SQL (closes #21611) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21612
  • Persistence models: Fix incorrect webhook DTO by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21736
  • Persistence Models: DTO attribute fixes by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/21670
  • Permissions: Fix GetPermissionsAsync to resolve permissions from nearest ancestor by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21741
  • Decimal Property Editor: Increase step size precision for configuration fields (closes #21759) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21769
  • Migrations: Re-trust untrusted foreign key and check constraints on SQL Server and fix bulk inserts to prevent recurrence by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21744
  • Audit: Fix container update operations incorrectly logged as new by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21774
  • Packaging: Fix package migration plans re-running all steps when a new step is added (closes #21730) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21734
  • Repository Caches: Fix GUID read repository cache key collision causing GetAll failures (closes #21756) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21762
  • RTE Link Picker: Fix media selection to allow items not permitted at root. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21678
  • Media Querying: Fix MediaAtRoot() to use IMediaNavigationQueryService root keys by @FabCodeDE in https://github.com/umbraco/Umbraco-CMS/pull/21807
  • Server Events: Invalidate client-side cache for composing types on composition deletion (closes #21768) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21831
  • Localization: Added missing translation values for field label on create member form by @Yinzy00 in https://github.com/umbraco/Umbraco-CMS/pull/21835
  • Block Variance: Ensure de-duplication and removal of orphaned expose entries in BlockEditorVarianceHandler by @kiannidev in https://github.com/umbraco/Umbraco-CMS/pull/21801
  • Document Workspace: Update document status on publish and unpublish (closes #21650) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21668
  • Cache Refreshers: Fix change tracking for content types by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/21856
  • Routing: Fix umbracoUrlName being ignored in DefaultUrlSegmentProvider on culture-variant content when property is invariant (closes #16791) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21735
  • Examine: For indexing in the RTE, replace all HTML tags with spaces to make sure word boundaries are preserved by @arknu in https://github.com/umbraco/Umbraco-CMS/pull/21797
  • Examine: Keep track of rebuilding in memory on startup and move use of LongRunningOperationService to user triggered rebuilds (closes #21716) by @Zeegaan in https://github.com/umbraco/Umbraco-CMS/pull/21821
  • UmbracoExtension template: Use runtimeConfigPath for automatic auth by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21838
  • Content Type: Fix null property description displaying as "null" string (closes #21873) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21879
  • Content Picker: Fix dynamic root resolution for new unsaved documents (closes #21870) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21880
  • Backoffice Search: Discard stale search results when switching providers (closes #21784) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21849
  • Document Repository: Batch document IDs in GetContentSchedulesByIds to avoid SQL parameter limit (closes #21865) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21868
  • Dotnet Templates: Update default UmbracoVersion template value using MSBuild target (closes #21889) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21893
  • Database Cache: Fix full database cache rebuild dropping variant and composed property values (closes #21863, #21882) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21890
  • URL Info: Fix invariant content URLs missing under non-default language domains (closes #21866) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21883
  • Cache: Ensure local cache instructions count towards last synced ID by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/21907
  • Data Types: Use configured ValueType when creating Label data types (closes #21853) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21914
  • Media Picker: Fix missing tooltip on media items in picker modal and property editor by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21913
  • Block Editors: Align create label by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21731
  • Block List: consistent spacing between blocks by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21750
  • Fix: Increase size of modal listing property editors by @TechPdo in https://github.com/umbraco/Umbraco-CMS/pull/21825
  • Repeatable Textstring: Skip empty strings in validation and persistence (closes #21912) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21915
  • Media Dropzone: Clarify error messages when file upload is not allowed (closes #21506) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21708
  • Public Access: Handle inherited protection gracefully in modal dialog (closes #21965) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21971
  • Account logout: Handle revocation request for cookie-stored back-office tokens (closes #21918) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21944
  • Tiptap RTE: Table node-view refactor to fix popover menus (closes #20614) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21696
  • Hybrid Cache: Resolve IsPublished() returning false in preview mode (closes #21983) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21985
  • Block editors: Make block editors read-only when document is trashed (closes #21973) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21982
  • Media Workspace: Fix collection view showing root items after creating new folder (closes #21700) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21753
  • Backoffice Toast Notifications: prevent double toast notifications on cancelled server operation statuses by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21993
  • Content Types: Fix API response for cancelled delete operation by @marcoteodoro in https://github.com/umbraco/Umbraco-CMS/pull/21758
  • Update badge icon (to use Lucide id-card) by @TechPdo in https://github.com/umbraco/Umbraco-CMS/pull/21911
  • Content Picker: Pass preview flag to published content cache lookups (closes #21972) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21975
  • Decimal Property Editor: Align step precision with database storage (closes #22003) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22004
  • Content Rollback: error handling by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/22018
  • Data Access: Modifies entity repository sibling queries to support custom database p[oviders (closes #21852) by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/21671
  • Breadcrumb variant-name logic improvment by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21617
  • Content picker: Fix dynamic root not firing when inside block list (closes #22008) by @EPP-KMD in https://github.com/umbraco/Umbraco-CMS/pull/22011
  • Data Types: Fix collection view references not showing in data type usages (closes #21649) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21655
  • Localization: Add for restore entity action by @Lantzify in https://github.com/umbraco/Umbraco-CMS/pull/22040
  • Localization: Export dictionary modal by @Lantzify in https://github.com/umbraco/Umbraco-CMS/pull/22038
  • Localization: Add for language picker modal by @Lantzify in https://github.com/umbraco/Umbraco-CMS/pull/22043
  • Sorter: Detecting outside drops when browser does not get events by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21664
  • URL Picker: Fix validation error persisting after link selection (closes #21903, #21454) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22034
  • fix: combine external-supplied pickableFilter with internal filter in picker input contexts (closes #21859) by @0xRozier in https://github.com/umbraco/Umbraco-CMS/pull/21989
  • Content: Only validate selected Cultures by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21361
  • Redirect Tracking: Fix segment duplication when domain has a path segment (closes #21763) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21772
  • Auth: Fix multi-tab auth failures by removing appauth dependency (closes #20873, #21598, #21704, #22022) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21830
  • URL Picker: Fix title field only showing first character when typing URL (closes #22048) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22053
  • Migrations: Run AddSortableValueToPropertyData before MoveDocumentBlueprintsToFolders by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22063
  • Templates: Add direct Swashbuckle dependency to extension template (closes #21864) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21869
  • Auth: Addresses regression where you could not configure separate auth cookie names (closes #22049) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/22057
  • Relations: Exclude relateParentDocumentOnDelete from EmptyRecycleBin reference check (closes #21926) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21954
  • Member Service: Fix skip/take pagination in GetAll (closes #22006) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22010
  • Management API: Defensively handle path integrity issues when resolving ancestors (closes #21822) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22036
  • Routing: Safely ensure AliasUrlProvider URLs have a leading slash by @callumbwhyte in https://github.com/umbraco/Umbraco-CMS/pull/22068
  • Localization: Added missing Japanese translations by @Lantzify in https://github.com/umbraco/Umbraco-CMS/pull/22056
  • Public Access: Preserve ancestor settings in dialog when setting up protection (closes #21740) by @farmergeek94 in https://github.com/umbraco/Umbraco-CMS/pull/21742
  • Notifications: Correct the deep link URL in notification emails (closes #22047) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22050
  • Public Access: Align state and initial display of toggles and buttons on modal (closes #22084) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22086
  • Fix the CSP in our local project to support iframing the marketplace by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22093
  • Relations: Fix relation type detail navigation from collection list (closes #22092) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22095
  • Auth: Fix re-entrant /token call after OAuth code exchange by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/22097
  • Media: Allow File media type as fallback when no specific extension match is available (closes #21733) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22054
  • Content Picker: Fix item reference link navigation (closes #22085) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/22103
  • File Upload: Lowercase file extension before validation (closes #22096) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/22108
  • Upload Field: Fix image overflowing content container (closes #22106) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/22107

🧪 Testing

  • E2E: QA Bumped version of test helper to fix the failing tests by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21596
  • Tests: Fix permission controller tests to use correct entity keys by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21613
  • Preset property value: acceptance test by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21498
  • E2E: QA Updated acceptance tests for adding block element to match the UI changes by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21679
  • Unit Tests: Add comprehensive coverage for BlockEditorVarianceHandler by @kiannidev in https://github.com/umbraco/Umbraco-CMS/pull/21706
  • E2E: QA Added acceptance tests for for scheduled publishing by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19794
  • E2E: Move test helpers and builders into the acceptance test project and publish as @umbraco/acceptance-test-helpers by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21773
  • Integration tests: Re-virtualized CustomMvcSetup by @lars-erik in https://github.com/umbraco/Umbraco-CMS/pull/21947
  • E2E: QA Updated AllowEditInvariantFromNonDefaultIsTrue tests to match the UI changes by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21950
  • Integration Tests: Fix null reference errors by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/21953
  • E2E: QA: Added acceptance tests for dynamic roots by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21966
  • E2E: QA: added acceptance tests for preview by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21967
  • E2E: QA Updated failing acceptance tests to match the UI changes by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/22002
  • E2E: QA Added acceptance tests for allowing folder selection in media entity picker by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21981
  • E2E: QA: Updated locator to find rollback button on the document workspace by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/22030
  • E2E: QA Updated the UI helper to verify that the image cropper is rendered by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/22046

🛡️ Code Quality, Documentation and Refactoring

  • Content Rollback: Abstracted rollback into reusable contentRollback entity action and modal kinds by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21939
  • Audit Log: Abstracted History Info App into reusable auditLog kind (for documents & media) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21898
  • Auth: Split auth modal into reusable view and introduce new non-dismissable modal type (closes #19628) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21846
  • Content Type: Introduce Entity Content Type Entity Context by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21817
  • Media Types: Add public constant for Folder media type GUID by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21597
  • Updates Umbraco templates, removes framework choice, makes LTS version a wildcard by @Jeavon in https://github.com/umbraco/Umbraco-CMS/pull/21430
  • Code Documentation: Add XML documentation to all public members in Umbraco.Core by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21471
  • Backoffice NPM: use looser peerDependencies version ranges for plugin compatibility by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21644
  • Initial update to a couple of Management API endpoints (closes #20689) by @OwainWilliams in https://github.com/umbraco/Umbraco-CMS/pull/20549
  • Add endpoint descriptions to all Management API controllers (closes #20689) by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/20690
  • Extension Slot: JS Docs update by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21645
  • Docs: Add breaking changes avoidance policy to CLAUDE.md by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21683
  • Developer Experience: Clarify nullability for BackOfficeAuthenticationBuilder.SchemeForBackOffice (closes #21689) by @PeterKvayt in https://github.com/umbraco/Umbraco-CMS/pull/21690
  • Task: Regenerate OpenAPI definition and backoffice client SDK by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21694
  • Developer Experience: Clarify obsoletion warning messages by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21695
  • API Docs: Fix and optimize DocFX API documentation pipeline by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21707
  • Entity Data Picker: Register non-editor manifests statically by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21721
  • Tree: Provide UmbEntityContext from the tree item context base by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21770
  • Document Collection: Reuse card view kind by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21791
  • CurrentUserModal: use getContext instead of consumeContext by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21843
  • Collection: Provide UmbEntityContext for entity collection item elements by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21847
  • Slider Preset: make it easier to read the code by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21955
  • File Uploads: Remove legacy Windows path length checks and related tests by @ronaldbarendse in https://github.com/umbraco/Umbraco-CMS/pull/21884

💻 Core Developer Experience

  • MCP: Basic setup for MCP in sourcecode by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21061

New Contributors

  • @TechPdo made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21665
  • @FabCodeDE made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21807
  • @kiannidev made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21801
  • @davidwengier made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21861
  • @andreaslborg made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21962
  • @EPP-KMD made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/22011
  • @farmergeek94 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21742

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.2.2...release-17.3.0

release-13.13.1 Bug fix

Fixed media picker folder navigation when "ignore user start nodes" is enabled.

Full changelog

What's Changed

  • File Uploads: Remove legacy Windows path length checks and related tests by @ronaldbarendse in https://github.com/umbraco/Umbraco-CMS/pull/21884
  • Media Picker: Fix media picker folder navigation with "ignore user start nodes" enabled (closes #21840 for 13) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21899

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.13.0...release-13.13.1

release-17.2.2 Security relevant
Security fixes
  • GHSA-rhcg-3h8r-v6vp — Fixed privilege escalation relating to user group memberships
  • GHSA-vrqc-59mw-qqg7 — Fixed XSS vulnerability with property type descriptions
  • GHSA-fpvf-fvp5-996r — Fixed authorization checks on node domain access
Full changelog

🔒 Security updates

  • Fixed issue relating to privilege escalation relating to user group memberships - GHSA-rhcg-3h8r-v6vp
  • Fixed issue relating to XSS vulnerability with property type descriptions - GHSA-vrqc-59mw-qqg
  • Fixed issue relating to authorization checks on node domain access - GHSA-fpvf-fvp5-996r

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.2.1...release-17.2.2

release-16.5.1 Security relevant
Security fixes
  • GHSA-rhcg-3h8r-v6vp — fixed privilege escalation related to user group memberships
  • GHSA-vrqc-59mw-qqg7 — fixed XSS vulnerability with property type descriptions
  • GHSA-fpvf-fvp5-996r — fixed authorization checks on node domain access
Full changelog

🔒 Security updates

  • Fixed issue relating to privilege escalation relating to user group memberships - GHSA-rhcg-3h8r-v6vp
  • Fixed issue relating to XSS vulnerability with property type descriptions - GHSA-vrqc-59mw-qqg
  • Fixed issue relating to authorization checks on node domain access - GHSA-fpvf-fvp5-996r

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.5.0...release-16.5.1

release-17.2.1 Bug fix

Fixed database cache rebuild losing variant and composed property values.

Full changelog

What's Changed

🐛 Bug Fixes

  • URL Info: Fix invariant content URLs missing under non-default language domains (closes #21866) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21883
  • Database Cache: Fix full database cache rebuild dropping variant and composed property values (closes #21863, #21882) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21890

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.2.0...release-17.2.1

release-17.2.0 Breaking risk
Security fixes
  • Dependencies: Update Microsoft packages to 10.0.1 and pin vulnerable transitive dependencies (closes #21122)
Notable features
  • Content Types: Root properties added
  • Recycle Bin: Adds `emptyRecycleBin` collection action kind for Documents and Media
  • Dictionary: Add configurable value search functionality
Full changelog

What's Changed Since 17.2.0-rc2

📦 Dependencies

  • build(deps): bumps @umbraco-ui/uui to 1.17.0 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21765

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.2.0-rc2...release-17.2.0

What's Changed Since 17.2.0-rc

🐛 Bug Fixes

  • Block Workspace: rename root-tab to 'generic' by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21699
  • Block Workspace: Tabs navigation, Cherry-pick from #21672 by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21693

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.2.0-rc...release-17.2.0-rc2

What's Changed Since the Last Release (17.1.0)

🙌 Notable Changes

  • User group: add description to user group (closes #14986) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21057
  • Content Types: Root properties by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21500

📦 Dependencies

  • Storybook: Bumps storybook from 9.0.14 to 10.1.10 by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/21208
  • Bump qs from 6.14.0 to 6.14.1 in /src/Umbraco.Web.UI.Client in the npm_and_yarn group across 1 directory by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/21270
  • Bump the npm_and_yarn group across 2 directories with 1 update by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/21403
  • Dependencies: Bumps login dependencies to latest by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21539
  • Tiptap RTE: Upgraded to latest v3.x by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21493
  • Dependencies: Bumps @umbraco-ui/uui to 1.17.0-rc.4 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21538
  • build(deps): bumps @umbraco-ui/uui to 1.17.0-rc.5 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21569
  • Dependencies: Update Microsoft packages to 10.0.1 and pin vulnerable transitive dependencies (closes #21122) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21285
  • Dependencies: Bump to latest minor/patch versions by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21540

🚀 New Features

  • Markdown Conversion: Remove hard dependency on deprecated library and replace with IMarkdownToHtmlConverter abstraction (closes #21238 and #19500) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21242
  • UI: Refactor breadcrumb URLs to use Path Constants by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21179
  • Tree Navigation: Add visual indicators for items with restricted access by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21365
  • Recycle Bin: Adds emptyRecycleBin collection action kind for Documents and Media by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21482
  • Tiptap RTE: Adds link (umbLink) support to styleMenu API by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21494
  • Rollback: Add toggle for diff display (closes #18518) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21426
  • Dictionary: Add configurable value search functionality by @Nis-Knowit in https://github.com/umbraco/Umbraco-CMS/pull/21200

🚤 Performance

  • Performance: Embeds the API of selected extra conditions by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21188
  • Performance: Bundle Js Libs by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21187
  • Performance: Embed Store API in Manifests to lower number of network request by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21191
  • Performance: Avoid database lookup in UserIdKeyResolver for super-user by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21281
  • Performance: Only flush ID/Key map in ContentCacheRefresher on content deletion by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21283
  • Performance: Optimize refresh of hybrid cache for a document by retrieving draft and published in single query by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21407
  • Backoffice Performance: Inline entry point modules to reduce JS chunk count by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21380
  • HybridCache: Optimize content type change cache rebuild to resolve SQL timeouts by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21207
  • Backoffice Performance: Use import maps to save requests by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21363
  • Document URL Cache: Ensure URLs are rebuilt after upgrade and prevent duplicate initialization (closes #21337) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21379
  • Performance: Fix thread safety and optimize cache updates in PublishStatusService after content changes by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21415
  • Tiptap RTE: Optimize umb-input-tiptap initialization and rendering by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21070
  • Routing: Add DocumentUrlAliasService for optimized URL alias lookups (closes #21383) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21396
  • Performance: Optimize property retrieval and authorization checks in collection views (closes #21367) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21470

🧪 Testing

  • E2E: QA Replaced unreliable Thread.Sleep(500) with a counter/gate pattern that ensures both transactions are initialized before releasing them to compete for locks by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21165
  • E2E QA: Updated integration test that was missing directory setup by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21167
  • E2E: QA Added acceptance tests for removing a not-found content picker by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21177
  • E2E: QA Fixed failing tests for the current user profile by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21214
  • Upgrade MSW from 1.3.5 to 2.12.4 by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21096
  • E2E: QA Added acceptance tests for rendering content with invariant blocks by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21180
  • E2E: QA Added acceptance tests for content delivery API by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21095
  • E2E: QA Update acceptance tests to use refactored UI helpers by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21266
  • E2E: QA Updated acceptance tests for max length validation message by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21230
  • E2E: QA Update acceptance to use new assertion pattern by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21297
  • E2E: QA added temporary waits to flaky acceptance by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21324
  • QA: E2E skip running sqlite acceptance test on nightly pipeline by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21331
  • E2E: QA Added acceptance tests for removing not-found items by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21371
  • Tests: Fix intermittent failure in RecycleBinMediaProtectionHelperTests by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21332
  • E2E: QA updated test helpers to fix flaky acceptance tests by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21373
  • E2E: QA Add acceptance tests for user group description by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21404
  • E2E: QA Fixed failing tests for setting up content notifications by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21441
  • E2E: QA Added separate emails for the login tests by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21443
  • E2E: QA Updated tests for granular permission in content to match the changes by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21478
  • Testing: Ensure ordering for paged descendants tests (closes #21446) by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/21447
  • E2E: QA Added acceptance tests for multi url picker validation message by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21226
  • E2E: QA Updated acceptance tests for collection view search and document type group by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21522

🛡️ Code Quality, Documentation and Refactoring

  • Tests: Fix CS4014 warnings - add missing await operators by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21194
  • Code Quality: resolve CS0628 warnings - change protected to private in sealed classes by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21193
  • Docs: Fix CS1573 warnings - add missing XML param tags by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21209
  • Logging: Resolves all CA2017 warnings and improves message clarity by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21210
  • Management API: Fixes the warning CS8524 and tidying up the "Set Status Redirect Url Management Controller" by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21211
  • Fix build warning CS0252 - unintended reference comparison in tests by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21212
  • Cryptographic Functions: Fixes obsolete .NET API warnings (SYSLIB0023, SYSLIB0045, SYSLIB0021, SYSLIB0013, SYSLIB0012) by replacing deprecated cryptographic and reflection APIs with their modern equivalents. by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21213
  • Code clean-up: Fixes all SA1117 warnings and adding more XML documentation comments by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21224
  • Code Quality: Fixing the build warnings in the Umbraco.Tests.Common project by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21245
  • Code documentation: Added XML Docs to the files in the Umbraco.Cms.Imaging.ImageSharp project by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21248
  • Code documentation: Added XML Docs to the files in the Umbraco.Cms.Imaging.ImageSharp2 project by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21249
  • Benchmarks: Fix obsolete BenchmarkDotNet API warnings by replacing depreciated function calls. by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21250
  • Code quality: Replace obsolete APIs in Umbraco.TestData controllers by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21251
  • Code quality: Resolve CS0108 compiler warnings by adding explicit 'new' keyword by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21236
  • Code quality: Remove obsolete serialization constructors (fixing SYSLIB0051 warnings) by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21235
  • Code quality: Fixing XML docs issues CS1570, CS1572, CS1723, & CS1575 by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21256
    • Build Warnings: Suppress ASPDEPR003 warnings in DevelopmentMode.Backoffice by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21259
  • Code Quality: Fix ASP0019 warnings by replacing Headers.Add with Headers.Append by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21260
  • Code quality: resolve build warnings CS0169 and CS0649 by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21258
  • Gitignore: Exclude acceptance test results from git by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/21336
  • Code Quality: Fix SA1500, SA1111 and SA1134 StyleCop warnings by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21369
  • Docs: Add branch naming convention details to CLAUDE.md by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21311
  • Code Quality: Fix StyleCop warnings SA1116, SA1401, SA1649, SA1405, SA1121, SA1130, SA1306, SA1028, SA1400, SA1106 by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21377
  • Code Quality: Removing a variable that is not being used fixing warning CS0168 by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21398
  • Code Quality: Fix CS1574 and CS0419 XML documentation warnings by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21400
  • Code Quality: Resolve SA1649 warnings by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21401
  • StringExtensions: Refactor into partial classes and optimize methods by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21370
  • Code Quality: Fix CS0659 and CS0661 build warnings in Item test class by removing legacy test and setup of little value by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21399
  • Code Quality: Adding all missing XML documentation for the Umbraco.Cms.Persistence.EFCore project by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21437
  • Code Quality: Resolve 128 SA1600 documentation warnings in Umbraco.Cms.Persistence.Sqlite by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21438
  • Code Quality: Adding XML documentation to Umbraco.Cms.Persistence.EFCore.SQLServer & Umbraco.Cms.Persistence.EFCore.SQLite by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21439
  • Constants: Move media-type guid strings into constants partial by @nathanwoulfe in https://github.com/umbraco/Umbraco-CMS/pull/21461
  • DevOps: Adds check:duplicate-class-names devops script by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21460
  • Task: De-duplicate TypeScript class names by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21474
  • Code Quality: Added missing documentation to the Umbraco.Cms.Api.Common project by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21465
  • View Engines: Make ProfilingViewEngine._inner private and modernize string formatting by @bohdansolovie in https://github.com/umbraco/Umbraco-CMS/pull/21550

🐛 Bug Fixes

  • Added a migration to remove the property regex validation length limit by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/21175
  • Content: Fix name() and getName() to use active variant (closes #20759) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21171
  • Cache: Add null checks for entities that may no longer exist during cache refresh by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21181
  • Block level variance: fix values being polluted when changing variance before publish by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/21121
  • Content Types: Fix property variation change when content exists only in non-default language by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21182
  • Indexing: Gracefully handle element property variance changes at index time by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/21183
  • Culture and Hostnames: Load all languages by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21169
  • News Dashboard: Update styling to fit with new style by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21185
  • Data Types: Add condition to hide delete action in non deletable data types. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21184
  • User Avatar: The "Change Photo" button is not working in all cases by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21206
  • Hybrid Cache: Clear published content cache on content type change by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21225
  • Media Picker: Always include folders when searching for media by @arknu in https://github.com/umbraco/Umbraco-CMS/pull/21216
  • fix: Update RenderNoContentController to use non-obsolete constructor by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21246
  • Content Type Cache: Clear ContentTypeCommonRepository cache when data types change (closes #21261) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21289
  • Management API: Scope notification headers and add document inclusion abstraction (closes #21231, #21241 and #21240) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21244
  • Added localize label for entity sign bundle by @Lantzify in https://github.com/umbraco/Umbraco-CMS/pull/21252
  • Auto close focus leave by @Welander1994 in https://github.com/umbraco/Umbraco-CMS/pull/20700
  • Extension insights: Hide icon from table collection by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/21268
  • Members: Fix IMemberService.GetByKeysAsync() by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/21312
  • Docker: Fix Docker template healthcheck, bind mounts, and HTTPS support (fixes #21278) by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21299
  • Fix login validation messages not showing on submit by @calm329 in https://github.com/umbraco/Umbraco-CMS/pull/21306
  • Entity Signs: Add localization keys to core entity signs by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21302
  • Removed margin-top to address the loader icon shifting when entering … by @shelly-chauhan in https://github.com/umbraco/Umbraco-CMS/pull/21301
  • Backoffice entity actions: prevent entity actions dropdown from closing on first click by @calm329 in https://github.com/umbraco/Umbraco-CMS/pull/21322
  • Server Events: Route document updated event when public access entries are modified (closes #21237) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21310
  • Multi-link picker: Allow drag and drop into empty link picker (fix #21295) by @calm329 in https://github.com/umbraco/Umbraco-CMS/pull/21325
  • Slide Property Editor: Enforce Maximum Value configuration (closes #21323) by @SmartDever02 in https://github.com/umbraco/Umbraco-CMS/pull/21339
  • Entity Signs: rounded infobox top corners by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21341
  • Multi-node picker: Validate content type when filter is configured but object type is not (closes #21338) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21342
  • Fix MSW typescript compile errors by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21319
  • Block workspace: Enforce "AllowEditInvariantFromNonDefault" in variant blocks (closes #20633) by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20868
  • TypeScript: Add all CustomEvents to GlobalEventHandlersEventMap by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21349
  • Fix #20769, added support for clip-text for UmbTableColumn by @enkelmedia in https://github.com/umbraco/Umbraco-CMS/pull/20808
  • Mobile navigation: enable horizontal scroll on small screens by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21354
  • Cache: Resolve thread safety issues in RepositoryCacheKeys and FullDataSetRepositoryCachePolicy (closes #21350) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21355
  • Collections: fix create action causing full page navigation by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/21366
  • Block Grid: Resolve translation keys for group names (closes #20696) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21362
  • Datatype Collection: Add fallback icon for datatype by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/21269
  • Sidebar: Make scale grab-area smaller by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21228
  • Add loading indicator to data type picker flow modal by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/21085
  • Add loading indicator to composition picker modal by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/21086
  • Content Type Designer: make inherited property appear more like the local, to take less focus by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21229
  • Add loading indicator and error handling to Member Public Access Modal by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/21087
  • Collection: Introduce Collection Text Filter Extension by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21172
  • Migrations: Ensure description column is added before earlier User Group migration runs by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21378
  • Server Events: Add runtime state check and error handling to ServerEventRouter by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21406
  • Media Picker: Uploaded files should automatically be selected (closes #21115) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21409
  • Backoffice: Fix login logo popover to display Umbraco branding (closes #21078) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21413
  • NPM: Move Umbraco Package Schema and custom-elements to root level for IDE discoverability (closes #16667) by @korbi551 in https://github.com/umbraco/Umbraco-CMS/pull/17866
  • Persistence Model: Replace some hard coded strings in DTOs by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/21327
  • dotnet Templates: Update Umbraco and Starter Kit versions in templates by @Jeavon in https://github.com/umbraco/Umbraco-CMS/pull/21395
  • Management API: Replace nameof() by constants of DTO (closes #21303) by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/21344
  • Thumbnails: Fix image thumbnails cropping to allow the entire image to be shown as a thumbnail (closes #20347) by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/21288
  • Media Picker: Respect start node when drag+dropping files directly onto picker (closes #21422) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21423
  • Focal point: Utility functions by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/21264
  • Notification Container: Make toast notifications announced by screen readers in Chrome. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21028
  • Content Workspace: Add condition to detect when a content workspace has finished loading. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21290
  • Bulk Publish: Filter variant options to applicable cultures only (closes #19147) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21163
  • Router: Destroy route component when disconnected (Fixes #21272) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21318
  • Content Picker: Provide "content root" origin for dynamic root (closes #21134) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21161
  • Document Tree: Filter tree items based on user browse permissions (closes #21141) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21173
  • Media: Unable to see the "Access denied" view when deep-linking to restricted media nodes by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21442
  • Content picker: Prevent selection of document/member type containers when configuring allowed types (closes #21356) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21357
  • Examine: Check for registered populators before emptying indexes by @Zeegaan in https://github.com/umbraco/Umbraco-CMS/pull/21455
  • Dotnet Template: Removes unused setting SanitizeTinyMce by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21467
  • Backoffice: Fix event listener memory leaks in auth, dropzone, actions, and router by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21458
  • User Management: Provide informative message on change password validation failure (closes #20665) by @JoseMarcenaro in https://github.com/umbraco/Umbraco-CMS/pull/21257
  • Content-Type Designer: Transfer tab when moving property to inherited tab (Fixes #20789) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21234
  • Entity Signs: Embed Api & Element for performance by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21480
  • Media: Picker Modal types export (Fixes #21265) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21329
  • Management API: Fix document URLs returning all languages for invariant content (closes #21459) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21473
  • Picker: Support embedded Collections in the Collection Item Picker Modal by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21392
  • Data Types: Allows transparency for the approved colors in the color picker. by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/21495
  • Redirect Tracking: Handle empty string in redirect tracker when restoring from recycle bin by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21488
  • Property Value Preset Builder: accept variant options by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21382
  • Block List & Block Single: Resolve Validation Race condition (Fixes #21313) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21491
  • Modal: Add 'in modal' condition to modal package by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21503
  • Fix for the client side circular dependency. by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/21464
  • Log Viewer: Fix polling interval reset when changing intervals (closes #21507) by @GiantDragon9090 in https://github.com/umbraco/Umbraco-CMS/pull/21508
  • Database Providers: Add support for providers offering sequence and null casting support (closes #21418) by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/21419
  • Load Balancing: Tracking difference CM and CD redirect and post-logout URIs in load-balanced environments by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/21432
  • Media: Only add deleted suffix to URLs for trashed media when recycle bin protection is enabled by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21412
  • Backoffice: Redirect to list view after entity deletion by @eureka928 in https://github.com/umbraco/Umbraco-CMS/pull/21456
  • Block List Editor: Describe that Single Block Mode is deprecated by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21512
  • Block editors: Fix false pending changes indicator for invariant block editor with culture-variant blocks (closes #21223) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21292
  • Content types: Allow adding composition with clashing property alias when property is being removed (closes #21298) by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/21527
  • Models Builder: Fix nested generic type handling in WriteClrType by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21429
  • Media: Prevent creation of media with GUID v7 keys when using incompatible path scheme (closes #21440) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21457
  • Dark mode: Added color variable to code block in the system information dialog to make it readable by @Jowaaaa in https://github.com/umbraco/Umbraco-CMS/pull/21532
  • Dotnet Template: Fix trailing comma in appsettings.json by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21529
  • Content picker: Fix bug where dynamic root children are not correctly available for selection (closes #21477 and #21537) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21535
  • Templates: Allow underscore as first character in template alias (closes #21534) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21536
  • Members: Fix misleading error message on change password with incorrect current password by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21504
  • Content/Media: Fix deadlock when performing certain operations in parallel (closes #21125) by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21526
  • UFM: Skip leading whitespace in token parser (closes #20341) by @D-Inventor in https://github.com/umbraco/Umbraco-CMS/pull/21509
  • External Logins: Handle duplicate key race condition intermittently triggered in ExternalLoginRepository by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21551
  • Translations: Add missing translations of document type and property names in collection views and user granular permissions (closes #21433) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21541
  • Content Type Designer: Property Layout updates by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21544
  • Tiptap RTE: Resolves inline blocks being set as dirty (closes #17749) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21546
  • Entity Signs: Refactor Entity Sign Bundle to use Popover API. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21490
  • Backoffice: Exclude invariant options for culture-variant properties in preset builder by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21555
  • Content Value Transformation: Clean out values when property-type variation transforms by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21557
  • Content Types: Fix deletion of properties without containers (closes #21566) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21585
  • Content Editor: Fix display of validation hint badge on tabs by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21595
  • Documents: Remove deprecated entityType from property values (closes #21567) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21609
  • Routing: Fix URL aliases not stored for variant content with shared alias property in DocumentUrlAliasService by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21571
  • OEmbed providers: Tighten up resource URL matching for providers by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21583

New Contributors

  • @calm329 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21306
  • @shelly-chauhan made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21301
  • @SmartDever02 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21339
  • @korbi551 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/17866
  • @Nis-Knowit made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21200
  • @GiantDragon9090 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21508
  • @eureka928 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21456
  • @Jowaaaa made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21532
  • @bohdansolovie made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/21550

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.1.0...release-17.2.0-rc

release-16.5.0 Security relevant
Security fixes
  • Debug mode: Marks UMB-DEBUG cookie as HttpOnly and Secure.
Full changelog

What's Changed Since 16.5.0-rc

🐛 Bug Fixes

  • Varying Compositions in Invariant Document Types, Cherrypick of #21267 by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21472

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.5.0-rc...release-16.5.0

What's Changed Since the Last Release (16.4.1)

🐛 Bug Fixes

  • Search: Preserve existing Examine FieldDefinitionCollection if it already exists by @callumbwhyte in https://github.com/umbraco/Umbraco-CMS/pull/20931
  • Media: Fixes image upload via drag and drop in Safari by @Welander1994 in https://github.com/umbraco/Umbraco-CMS/pull/20893
  • Image cropper: Modal import missing component by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20651
  • Icon Picker: Restore option to hide colors by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20650
  • oEmbed Providers: Updated the X oEmbed provider to use the x.com domain (closes #21052) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21053
  • Property Editors: Hide "add button" when maximum configuration is 1 (fixes #20407) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20738
  • https://github.com/umbraco/Umbraco-CMS/pull/21015 by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21015
  • Content Types: Fix property variation change when content exists only in non-default language by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21182

🔒 Security

  • Debug mode: Marks UMB-DEBUG cookie as HttpOnly and Secure by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21032

🧪 Testing

  • E2E: QA cherry picked acceptance tests updates from 17 by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/20714
  • E2E: QA Replaced unreliable Thread.Sleep(500) with a counter/gate pattern that ensures both transactions are initialized before releasing

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.4.1...release-16.5.0-rc

release-17.1.0 Bug fix
Notable features
  • Preview environment switch inside preview app
  • Login show/hide password toggle
  • Clear Clipboard button in UI
Full changelog

What's Changed Since 17.1.0-rc

🐛 Bug Fixes

  • Media: Fix files not deleted from disk when recycle bin protection is enabled by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21309
  • Document Editing: Refactor of Fix property variation change breaking document save via Infinite Editing (closes #21195) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21293
  • https://github.com/umbraco/Umbraco-CMS/pull/21306 by @calm329 in https://github.com/umbraco/Umbraco-CMS/pull/21306

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.1.0-rc...release-17.1.0

What's Changed Since the Last Release (17.0.2)

📦 Dependencies

  • Dependencies: Fixed dependency conflicts when installing Microsoft.EntityFrameworkCore.Design (closes #20421) by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20474
  • Dependencies: Remove Microsoft.CodeAnalysis.CSharp dependency from Umbraco.Infrastructure by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20481
  • build(deps): bumps @umbraco-ui/uui from 1.16.0-rc.0 to 1.16.0 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20535
  • Bump vite from 7.1.9 to 7.1.11 in /src/Umbraco.Web.UI.Client by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/20580
  • Bump vite from 7.1.9 to 7.1.11 in /src/Umbraco.Web.UI.Login by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/20621
  • Bump playwright and @playwright/test in /tests/Umbraco.Tests.AcceptanceTest by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/20579
  • Bump the npm_and_yarn group across 2 directories with 1 update by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/20863
  • Dependencies: Updates some dependencies to latest minor or patch releases by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20953
  • build(deps): bumps monaco-editor from 0.54.0 to 0.55.1 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21054

🌈 Accessibility Improvements

  • Entity Actions: Create button discernible text (fixes #20205) by @OskarKruger in https://github.com/umbraco/Umbraco-CMS/pull/20434
  • Entity Actions: More create button discernible text, extension of #20434 by @OskarKruger in https://github.com/umbraco/Umbraco-CMS/pull/20458
  • Header: Adjusted button focus border color contrast by @MrHutmat in https://github.com/umbraco/Umbraco-CMS/pull/20562
  • Login: Added custom validation for missing password and user/email on the login form by @MrHutmat in https://github.com/umbraco/Umbraco-CMS/pull/20233
  • Accessibility: Adding a label attribute for <uui-button> in news dashboard by @MrHutmat in https://github.com/umbraco/Umbraco-CMS/pull/20780
  • Keyboard navigation: Return to opening element after modal close by @MrHutmat in https://github.com/umbraco/Umbraco-CMS/pull/20782

🚀 New Features

  • Preview: Allows changing the preview environment inside the preview app, and other UX changes that enhance the experience by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20598
  • Login: Adds show/hide password toggle by @MrHutmat in https://github.com/umbraco/Umbraco-CMS/pull/20611
  • Adds Clear Clipboard button & logic by @warrenbuckley in https://github.com/umbraco/Umbraco-CMS/pull/20757
  • Member types: Implement containers by @ronaldbarendse in https://github.com/umbraco/Umbraco-CMS/pull/20706
  • Log viewer: Improves search functionality and code quality by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20913
  • Log Viewer: Enhances the donut chart to be responsive, link to log search, and show numbers directly by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20928
  • Culture and Hostnames: Add ability to sort hostnames (closes #20691) by @MrHutmat in https://github.com/umbraco/Umbraco-CMS/pull/20826
  • Localization: Adds termOrDefault() method to accept a fallback value by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20947
  • Block Grid: Sort mode by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20869
  • News Dashboard: Adding functionality to overwrite the cache duration by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/21064
  • Block List: Sort mode by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21060
  • Extend RTE output in Delivery API for better support for multi-site URL resolution by @MiguelGuedelha in https://github.com/umbraco/Umbraco-CMS/pull/20846
  • Content Types: Introduce schema service to support future schema generation by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21031
  • Delivery API: Adding allow list for content types by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/21111
  • Emails: Add Expires header by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/20285
  • Indexing: Make the indexing batch size configurable by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/20543
  • Media: Add protection to restrict access to media in recycle bin (closes #2931) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20378
  • Collection: Introduce Collection Item Card extension type by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20954
  • Collection: Introduce Collection Item Ref extension type by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20994
  • Collection: Introduce Card and Ref Collection View kinds by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/21037

🚤 Performance

  • Performance: Optimize memory footprint of document URL cache (closes #21055) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21066
  • Distributed Background Jobs: Improve distributed background job locking behavior and performance by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21100
  • Repositories: Optimize repository caches to populate for both int and GUID keys by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21124
  • Performance: Re-introduce lazy locks by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21102

🐛 Bug Fixes

  • Preview: Removes sessions by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20561
  • Property Type workspace: layout & labelling adjustments by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20131
  • Color Picker: Validate uniqueness of selected colors by @Programeerik in https://github.com/umbraco/Umbraco-CMS/pull/20431
  • Members: Forward port of fix for member lockout issue #16988 from PR #17007 for 16 by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20441
  • Refactoring: Fixed spelling mistake in method name by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20460
  • Recycle Bin: Trigger cache invalidation for trashed document/media items by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20483
  • News Dashboard: split into card + container, parent handles the data from the repo by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20503
  • Extensions: Adds @provideContext and @consumeContext decorators for a better developer experience by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20510
  • Preview: Redirect to published URL on exit by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20556
  • Block List: Remove bold label from inline editing by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20437
  • User And User Group Workspace: Make views extendable (#20548) by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20617
  • Icon Picker: Fix empty selection allowed on mandatory fields and add validation. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20536
  • Don't call generateAlias on #onAliasChange() by @BatJan in https://github.com/umbraco/Umbraco-CMS/pull/20628
  • Property Editors: Added form control and mandatory support to editors in common group(Number, Tags, Slider). by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20659
  • Routing: Added method to IDocumentUrlService for retrieving document key from URI (closes #20666) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20673
  • Icon picker: Better title for icon colors by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20649
  • Document Recycle Bin: Remove non-relevant entity bulk actions (closes #20677) by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20685
  • UX: Adjust box-sizing to ensure tree and workspace top borders are aligned by @nathanwoulfe in https://github.com/umbraco/Umbraco-CMS/pull/20694
  • Preview: Add allow-forms to iframe sandbox attributes by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/20701
  • Property Editors: Add mandatory support to Number Range (Refactor). by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20570
  • Tiptap RTE: Localizes property editor UI label (removes "[Tiptap]" from label) (closes #20439) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20713
  • Auth: Cleans up stale or completed auth details from storage by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20725
  • Property Editors: Hide "add button" when maximum configuration is 1 (fixes #20407) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20738
  • Rich Text Editor: The media picker skips the "edit media" dialog when editing an image (closes #20066) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20740
  • User Workspace: localize password mismatch feedback by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20747
  • Login: Changes localization for email confirmations to be more friendly by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20750
  • Installer: Fix issues with newsletter signup by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20705
  • Localization: Supply the display name to the localization key for the alt and title attributes of the 2FA QR code image by @warrenbuckley in https://github.com/umbraco/Umbraco-CMS/pull/20770
  • Slider property editor: Fix for preset value handling of enableRange by @Luuk1983 in https://github.com/umbraco/Umbraco-CMS/pull/20772
  • Querying: Restore ability to retrieve all children published in any culture (closes #20760) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20766
  • Package section: use command icon for migrations, remove prop by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20775
  • Templates: Fix "Discard changes?" dialog after creating template with master template (fixes #20262) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20749
  • Backoffice Item Pickers: Show error for missing items in 10 picker types (closes #19329, #20270, #20367) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20762
  • Migrations: Provide migration for single block property editor by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/20663
  • Fix for partial view caches not being cleared when content is publish… by @justin-nevitech in https://github.com/umbraco/Umbraco-CMS/pull/20794
  • Database migrations: Support DateOnly and TimeOnly in syntax providers by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20784
  • Content Type Designer: Always register root route to support drag-and-drop into empty Generic tab. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20809
  • Relations: Exclude the relate parent on delete relation type from checks for related documents and media on delete, when disable delete with references is enabled (closes #20803) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20811
  • Preview: Add validation support to Save and Preview button (closes #20616) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20805
  • Media Picker: Remove duplicate loaders in media cards. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20793
  • Content Type Designer: Use input-with-alias and implement regex validation for Alias. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20755
  • Property Editors: Added form control and mandatory support to editors in rich content group(Code editor, Markdown, Block grid) by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20693
  • Decimal property editor: Flexibly parse decimal value with different separators (closes #20823) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20828
  • Content Sorting: increase modal size by @Frost117 in https://github.com/umbraco/Umbraco-CMS/pull/20835
  • Property Editors: Added form control and mandatory support to editors in picker group(Color, Content, Date, Document, Eye dropper, Multi URL). by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20684
  • Redirects: Fixes self referencing redirects (closes #20139) by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/20767
  • Block list: ensure block items stay top-aligned when sorting by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20842
  • Block Entry Context: Update the settingsPropertyValueByAlias to observe settings. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20861
  • Text string property editor: Data-type validation for max chars (fixes #18817) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20843
  • E2E: QA Updated tests with the .skip tag by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20739
  • Content types: Apply text selection when unlocking alias by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20882
  • TextBox, TextArea: Message max length validation (close #20710) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20886
  • Migrations: Handles rich text blocks created with TinyMCE in convert local links migration and refreshes internal datatype cache following migration requiring cache rebuild (closes #20885) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20887
  • Integration Tests: Use empty temp folder for legacy lang config when using integration tests outside core (closes #20888) by @lars-erik in https://github.com/umbraco/Umbraco-CMS/pull/20889
  • Block editors: Localization schema elements such as property names in clipboard view (#20756) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20903
  • Redirect tracking: Ensure redirects with domains are stored with the domain node id prefix (closes #20894) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20900
  • Content Type Designer: Only update tab name on change by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20786
  • Collections: Sets the default name for the content collection workspace name to 'Child items' instead of 'Collection' by @netaddicts-council in https://github.com/umbraco/Umbraco-CMS/pull/20907
  • Bock Type Card: make actions stand clear from thumbnail/color by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20895
  • Trashbin: introduce a empty trash icon by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20629
  • Properties: Implement container queries by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20832
  • Preserve existing Examine FieldDefinitionCollection if it already exists by @callumbwhyte in https://github.com/umbraco/Umbraco-CMS/pull/20931
  • Permissions: Protect GetIdsFromPathReversed against invalid program exception by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20930
  • UFM: Update contentName component to respect current backoffice culture. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20927
  • Examine Management: Allow selection of all available fields in Examine search results, and fix layout issue when not all records have all fields (closes #20878 and #20879) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20909
  • Multi URL Picker: change validation for url and anchor/querystring by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20920
  • Log Viewer: Adds localization in the Backoffice UI + cleans up unused keys by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20923
  • Block Catalogue: Localizes block-type name/description before render (closes #20890) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20904
  • Login Screen: Fix css for login screen dark mode (#20922) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20946
  • Block editors: adds prefix to workspace title (closes #20588) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20884
  • Extensions: Adds all yet unused Lit directives to @umbraco-cms/backoffice/external/lit (closes #20961) by @warrenbuckley in https://github.com/umbraco/Umbraco-CMS/pull/20963
  • Installer: Removes unused telemetry functionality by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20995
  • Content Type Workspace: Create condition that checks content type uniques. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20906
  • Preview: Fix preview showing published version when Save and Preview is clicked multiple times (closes #20981) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20992
  • History: Take URL objects into consideration when storing Backoffice history by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20986
  • Upgrade: Deprecates Management API controller for defunct our.umbraco.com version checker by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21011
  • Folder Workspace: Support menu expansion and breadcrumbs (closes #20675) by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20712
  • Data Type Workspace: Enable client mandatory field validation for configuration properties by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20799
  • Table Collection View: Update table view icon to 'icon-table' by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20970
  • Property Editors: Added form control and mandatory support(User, Member, Member Group) by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20672
  • Block: open-interaction only available when Content is Editable by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20833
  • Image cropper modal import missing component by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20651
  • Backoffice: CTRL+Click to open in a new tab should work on Linux (closes #21009) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21027
  • Debug mode: Marks UMB-DEBUG cookie as HttpOnly and Secure by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21032
  • Property Editors: Fix localization of user-provided labels (closes #20974) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21045
  • Packaging: Fixing bad serialization for data types in packages by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/21043
  • Document Tree: Fix undefined name for variants without fallback. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/21046
  • Collections: Add selection mode toggle in UmbTableElement update lifecycle by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/20486
  • Segments: Only validate segment values for cultures they are defined for (closes #21029) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21033
  • oEmbed Providers: Updated the X oEmbed provider to use the x.com domain (closes #21052) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21053
  • Webhooks: Added 'mandatory' tag as a visual indicator for at lease one webhook event being required by @Frost117 in https://github.com/umbraco/Umbraco-CMS/pull/21075
  • Tiptap RTE: De-duplicate extensions to prevent console warnings by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21068
  • Examine: Improve deletion logic in UmbracoContentIndex by @Shazwazza in https://github.com/umbraco/Umbraco-CMS/pull/21091
  • Blocks: localize group headline by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21090
  • Sync: Fix SyncBootStateAccessor to use ILastSyncedManager to prevent unnecessary cold boots by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21109
  • Distributed Background Jobs: Add initialization logging to DistributedJobService by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21112
  • Long Running Operations: Ensure eager write lock by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21113
  • Templating: Creating a doctype with template now yields a strongly typed template (closes #20443) by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20688
  • Content Publishing: Fix deadlocks by acquiring WriteLock at outer scope by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21105
  • Icon Picker: Add option to hide colors by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20650
  • UFM: Resolves "missing filter" console warning by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21118
  • Media: Fixing media folder not getting deleted when deleting media files. by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/21059
  • Workspace: Fix browser title not being set correctly by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/21126
  • Fix #20944: Updating UI Slider number properties to accept decimal values by @jsandrae in https://github.com/umbraco/Umbraco-CMS/pull/20945
  • Manifests: Fix misnaming and mis-registering of the document validation manifest (closes #21128) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21139
  • Backoffice search: Fixes items missing umbraco URL segment by @rammi987 in https://github.com/umbraco/Umbraco-CMS/pull/20266
  • Tiptap RTE: Uses UmbracoCssPath global setting when loading CSS files (closes #20877) by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/21106
  • Block Editors: variantId inheritance fix by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21101
  • Distributed Background Jobs: Catch exceptions in job loop to improve application resilience by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21099
  • UI: Prevent headline overflow in umb-body-layout by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/21140
  • Tree: Fix race condition when loading tree with hideTreeRoot enabled by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21160
  • Document Saving: Fix SQL Server deadlock during concurrent updates by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21156
  • Relations: Fix descendants query to exclude parent item by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21162
  • Multi url picker: Refactor validation (fixes #21044) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21143
  • Add loader to Culture and Hostnames modal while data loads by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/21084
  • Models builder: Re-provide support for casting a published member to the models builder type (closes #21135) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21150
  • Document Permissions: Export UmbDocumentUserPermissionCondition from package (closes #21199) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21217
  • Content Type Workspace: Fix navigation blocked after save (closes #21196) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21218
  • TextBox: Fix max length validation message showing wrong exceeded count (closes #21198) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21219
  • Document Editing: Fix property variation change breaking document save via Infinite Editing (closes #21195) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/21221
  • Hybrid Cache: Clear published content cache on content type change by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21225

🧪 Tests

  • Workspace View: Add tests for create and using custom workspace view by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20408
  • Dashboard: Add tests for create and using custom dashboard by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20253
  • E2E: Updated acceptance tests to match changes by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/20493
  • E2E: QA Fixed the flaky tests related to publishing content with image cropper by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20577
  • E2E: QA cherry picked acceptance tests updates from 17 by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/20714
  • E2E: QA Fixed the failing tests due to the recent UI changes by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20576
  • Block Custom View: Add tests for create and using block custom view by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20472
  • Property action: Add tests for create and using Property Action UI Extension by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20291
  • Integration Tests: Avoid asserting on errors for permission tests by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20643
  • Collection view: add tests for create and using collection view by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20667
  • E2E: QA added entity picker acceptance tests by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/20776
  • Collection view test: update changes for v17 by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20812
  • E2E: Updated the failing Default Config tests by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20818
  • E2E: QA Updated .fixme() acceptance tests by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20919
  • E2E: QA Added acceptance tests for notification emails by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20918
  • E2E: QA updated flaky acceptance tests by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21012
  • E2E: QA updated current accceptance test project README to match current project by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21063
  • E2E: QA Fixing some failing tests related to culture and hostname, log viewer and user by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21132
  • Unit tsts: Added tests for HideBackOfficeTokensHandler by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/21067
  • E2E: Added acceptance tests for regression issues by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/21098
  • E2E: QA Added acceptance tests for issue #20815 by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/21151

🤖 AI Tool Support

  • Docs: Add CLAUDE.md documentation for key .NET projects by @hifi-phil in https://github.com/umbraco/Umbraco-CMS/pull/20841
  • Docs: Add Claude memory files for all relevant project files by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/20959
  • Add Context7 claim file by @hifi-phil in https://github.com/umbraco/Umbraco-CMS/pull/21110
  • Docs: Add PR naming convention to CLAUDE.md by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21114
  • Docs: Add CLAUDE.md documentation for Tiptap RTE by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/21103

New Contributors

  • @Luuk1983 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20772
  • @Frost117 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20835
  • @netaddicts-council made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20907
  • @jsandrae made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20945
  • @MiguelGuedelha made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20846

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.0.2...release-17.1.0-rc

release-13.13.0 Breaking risk
Security fixes
  • GHSA-hfv2-pf68-m33x — resolves vulnerability in temporary file handling and deletion during dictionary and content type upload process
Full changelog

What's Changed Since 13.13.0-rc3

🐛 Bug Fixes

  • Media picker: Fix image selection after upload when media picker presents multiple pages (closes #21115) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21117
  • Members: Fix GetLockoutEnd to return DateTimeOffSet max rather than DateTime max (closes #21155) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21157

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.13.0-rc3...release-13.13.0

What's Changed Since 13.13.0-rc2

📦 Dependencies

  • Updates dependencies to latest patch for 13.13 by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21108

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.13.0-rc2...release-13.13.0-rc3

What's Changed Since 13.13.0-rc

🔒 Security

  • Resolves vulnerability relating to the handling and deletion of temporary files during the dictionary and content type upload process released in 13.12.1 and discussed in https://github.com/umbraco/Umbraco-CMS/security/advisories/GHSA-hfv2-pf68-m33x.

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.13.0-rc...release-13.13.0-rc2

What's Changed Since the Previous Release (13.12.0)

🐛 Bug Fixes

  • Redirects: Fix self referencing redirects for 13 (closes #20139) by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/20908
  • Content picker: Allow selections on a content picker on a read-only document to be opened (closes #20816) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20819
  • Block Grid: Align read-only display with other property editors by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/21007
  • Content editing: Correct handling of read-only of name field when A action is removed in SendingContentNotification by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20072
  • Content picker: Remove multi-node content picker entries by UDI to account for index not aligning with stored values (closes #20943) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20950
  • Content picker: Allow selections on a content picker on a read-only document to be opened (closes #20816) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20819
  • Media Picker Fixed folder navigation when returning from an empty folder (closes #20975) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20987
  • Media Picker: Present root nodes for users with more than one media root node assigned (closes #20967 and #21048) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20993

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.12.0...release-13.13.0-rc

release-17.0.2 Bug fix

Fixed back-office token cookie name calculation, sync boot state accessor usage, and dotnet new template placeholders.

Full changelog

What's Changed

🐛 Bug Fixes

  • Back-office auth: Calculate token cookie names at request time (Closes #21050) by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/21056
  • Sync: Fix SyncBootStateAccessor to use ILastSyncedManager to prevent unnecessary cold boots by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/21109
  • Dotnet new templates: Fix placeholders and port in umbraco-extension template by @LottePitcher in https://github.com/umbraco/Umbraco-CMS/pull/20956

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.0.1...release-17.0.2

release-13.12.1 Security relevant
Security fixes
  • GHSA-hfv2-pf68-m33x — fixes vulnerability in handling/deletion of temporary files during dictionary and content type uploads
Full changelog

What's Changed

🔒 Security

  • Resolves vulnerability relating to the handling and deletion of temporary files during the dictionary and content type upload process discussed in https://github.com/umbraco/Umbraco-CMS/security/advisories/GHSA-hfv2-pf68-m33x.

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.12.0...release-13.12.1

release-17.0.1 Bug fix

Fixed Delivery API login redirect behavior retention in .NET 10.

Full changelog

What's Changed

🐛 Bug Fixes

  • Delivery API: Only add default strategy if delivery API is not registered (closes #20976) by @Zeegaan in https://github.com/umbraco/Umbraco-CMS/pull/20982
  • Rendering: Don't use element cache level on snapshot cache level properties by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/21006
  • Delivery API: Missing Member Open API security scheme references by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/21020
  • Tree: Fix incorrect error notification when deleting last child (closes #20977) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20985
  • Delivery API: Retain the Delivery API login redirect behavior in .NET 10 (closes #21000) by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/21023
  • Segments: Fix processing data for segments variants by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/21018
  • Static files: Fix tree to only provide items from expected folders (closes #20962) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21001
  • Management API: Return not found from request for content references when entity does not exist (closes #20997) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20999
  • Migrations: Ensure umbracoPropertyData column casing by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21015
  • Cache: Add awaits to memory cache rebuilds to fix race conditions by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/20960

🚤 Performance

  • Migrations: Optimise ConvertLocalLinks migration to process data in pages, to avoid having to load all property data into memory by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21003
  • Migrations: Set a long timeout by default on the migration of system dates (closes #21013) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/21022

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-17.0.0...release-17.0.1

release-16.4.1 Bug fix

Fixed Delivery API incorrectly adding a default strategy when already registered.

Full changelog

What's Changed

🐛 Bug Fixes

  • Delivery API: Only add default strategy if delivery API is not registered (closes #20976) by @Zeegaan in https://github.com/umbraco/Umbraco-CMS/pull/20982

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.4.0...release-16.4.1

release-17.0.0 Maintenance

Minor fixes and improvements.

Full changelog

What's Changed

See the prior release notes for each pre-release version:

  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-17.0.0-rc4
  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-17.0.0-rc3
  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-17.0.0-rc2
  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-17.0.0-rc1
  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-17.0.0-beta

New Contributors

  • @IvovdBruggen made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/15927
  • @DevAndersen made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/19785
  • @floede made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20080
  • @KaasKop97 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20249
  • @psot made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20301
  • @ardelean94 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20346
  • @mdubbelv made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20144

Release overview: https://releases.umbraco.com/release/umbraco/Umbraco-CMS/17.0.0
Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.3.0...release-17.0.0

release-16.4.0 Breaking risk
Notable features
  • Backoffice login moves access/refresh tokens to secure cookies (configurable via `Umbraco:Cms:Security:BackOfficeTokenCookie:Enabled`).
  • Redacts back‑office PKCE codes from server responses.
Full changelog

What's Changed Since 16.4.0-rc2

🐛 Bug Fixes

  • Block Editors: avoid discard changes for no changes (Fixes #20680) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20941
  • Localization: Restores region-specific cultures (#20939) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20942

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.4.0-rc2...release-16.4.0

Changes in 16.4.0-rc2 Since 16.4.0-rc

:raised_hands: Notable Changes

  • Backoffice Login: Move access/refresh tokens to secure cookies by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/20779
  • Backoffice Login: Redact back-office PKCE codes from the server (V16) by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/20851
    As an added security feature used by default in Umbraco 17, user authentication tokens can be returned in secure cookies from the server's authentication requests. For backwards compatibility reasons, the feature is disabled by default, but can be enabled via the boolean configuration at Umbraco:Cms:Security:BackOfficeTokenCookie:Enabled. Read more in the Umbraco documentation.

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.4.0-rc...release-16.4.0-rc2

Changes in in 16.4.0-rc

📦 Dependencies

  • Bump tar-fs from 3.1.0 to 3.1.1 in /src/Umbraco.Web.UI.Client by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/20260
  • Dependencies: Updates all npm dependencies for Client, Login, and UmbracoExtension by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20386
  • build(deps): bumps @umbraco-ui/uui from 1.15.0 to 1.16.0-rc.0 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20402
  • Dependencies: Fixed dependency conflicts when installing Microsoft.EntityFrameworkCore.Design (closes #20421) by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20474
  • build(deps): bumps @umbraco-ui/uui from 1.16.0-rc.0 to 1.16.0 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20535
  • Bump vite from 7.1.9 to 7.1.11 in /src/Umbraco.Web.UI.Client by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/20580
  • Bump vite from 7.1.9 to 7.1.11 in /src/Umbraco.Web.UI.Login by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/20621
  • Dependencies: Update dotnet sdk and node development dependency to latest secure version of current major (16) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20734

🌈 Accessibility Improvements

  • Login form: Improves accessibility by removing duplicate label and aria-label by @MrHutmat in https://github.com/umbraco/Umbraco-CMS/pull/20232
  • Add accessibility label for splitview divider by @OskarKruger in https://github.com/umbraco/Umbraco-CMS/pull/20380
  • Announce newest notification using live region by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/19979
  • Entity Actions: Create button discernible text (fixes #20205) by @OskarKruger in https://github.com/umbraco/Umbraco-CMS/pull/20434
  • Entity Actions: More create button discernible text, extension of #20434 by @OskarKruger in https://github.com/umbraco/Umbraco-CMS/pull/20458

🚀 New Features

  • Add more icons correct Content Type Designer Icons by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20252
  • Segments: Auto unfold the culture variant in non-culture-variant mode by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20189
  • Loader bar: Implement loader for Content Workspaces by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20288
  • Segments: Adds deprecation notices to AllowNonExistingSegmentsCreation by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20413
  • Backoffice: Add Entity Signs (overlay icons) to tree items. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20328
  • Permissions: Added User fallback permission condition (closes #20097) by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20224

🚤 Performance

  • Performance: Added request cache to media type retrieval in media picker validation by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20405
  • Performance: Reduce number of database calls in save and publish operations by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20485
  • Performance: Request cache referenced entities when saving documents with block editors by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/20590

🐛 Bug Fixes

  • Tiptap: QA Added acceptance tests for regression issue #19763 by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/20226
  • UX: Make approved colour picker remove button consistent with other multi value item remove buttons by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20257
  • Update Readme to signpost the Forum by @OwainWilliams in https://github.com/umbraco/Umbraco-CMS/pull/20268
  • QA Skip the known failing smoke test to avoid blocking other PRs by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20269
  • UX: Add slightly more padding at top so user card outline is not cutoff by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20258
  • NuGet vulnerability warnings: Warn in non-Release mode, Error in non-Release mode by @emmagarland in https://github.com/umbraco/Umbraco-CMS/pull/17244
  • AllowEditInvariantFromNonDefault : Fix property write guard to use correct variant ID (closes #20250) by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20277
  • Layout header top custom property by @floede in https://github.com/umbraco/Umbraco-CMS/pull/20080
  • Micro-optimization: Move compilation of some Regex generation to compile time instead of runtime, make some static ones compiled by @Henr1k80 in https://github.com/umbraco/Umbraco-CMS/pull/20287
  • E2E nightly pipeline: QA Fix failing acceptance tests for invalid cases by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20289
  • Media Workspace Path: add parent path to support absolute path generation by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20302
  • Models: PropertyType constructor sets the DataTypeKey if IDataType has identity by @psot in https://github.com/umbraco/Umbraco-CMS/pull/20301
  • Log Viewer: Fixes continuous polling (closes #20274) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20310
  • Localization: Fixed message in block group delete confirm modal (closes #20308) by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20312
  • Migrations: Create missing tabs on content types when referenced by both composition and content type groups (closes #20058) by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20303
  • Extend logging (add delay and period) by @erikjanwestendorp in https://github.com/umbraco/Umbraco-CMS/pull/20333
  • UX: Removed the dot "." in front of the jpg file extension example by @andersreus in https://github.com/umbraco/Umbraco-CMS/pull/20334
  • Refactoring: Add extension method for retrieval of language ISO codes if that's all we need by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20324
  • Media: Prevent svg image to extend outside the editor bounds by @ardelean94 in https://github.com/umbraco/Umbraco-CMS/pull/20346
  • Exception handling: Improve error messaging on invalid umbraco-package.json file by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20332
  • Handle vary by segment variant-entires by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20191
  • Data Type: Improve missing property editor and property editor UI feedback by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20339
  • Caching: Fixes regression of the caching of null representations for missing dictionary items (closes #20336 for 16) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20349
  • Switch container to use SQL 2022 instead of SQL Edge by @CarlSargunar in https://github.com/umbraco/Umbraco-CMS/pull/17262
  • Color Picker: Set initial hex value for picker (closes #20326) by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20357
  • Color Picker: Styling for drag handle at swatch items by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20360
  • Localization: Added translations for area validation property labels by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20362
  • E2E Pipeline: QA Remove continue on error condition by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/20365
  • Change to layout of default Content area dashboard by @dalyUSN in https://github.com/umbraco/Umbraco-CMS/pull/20355
  • Block Grid: Add icon to allowed block types in area by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20364
  • Management API: Use EndpointMetadata to check for MapToApiAttribute at runtime to include Controller in Swagger document by @mdubbelv in https://github.com/umbraco/Umbraco-CMS/pull/20144
  • Block Grid: Add more spacing in combobox group header by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20373
  • Block Grid: Add a bit more spacing and align button in block grid areas config by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20374
  • Slider: improved value fallback handling + validation by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20228
  • Entity-Action Bundle: Ensure First Action are updated in rendering by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20351
  • Extension Registry: QA Added acceptance tests for readOnlyGuards rule, entity action and custom property editor by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19939
  • Content: QA Add acceptance tests for regression issue #17735 by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20330
  • Value Presets: also run value presets on load by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20239
  • Block Grid: Configure minimum one column for areas by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20363
  • Block Grid: Styling of group drag with handle by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20361
  • Delivery API: QA Add acceptance test for media delivery api by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20182
  • User Profile: QA Add acceptance tests for the regression issue #18084 by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20329
  • UFM: Fixes the truncate filter to only add ellipsis when text is actually truncated (closes #20395) by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/20396
  • Repositories: Retrieve users for groups in batches to fix UserService.GetAllInGroup failing on too many users in a group by @piers-taylor-1994 in https://github.com/umbraco/Umbraco-CMS/pull/20298
  • Icon Picker: Deselect current icon & add “No icon” tile inside the modal. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20342
  • Validation context uncaught promise (closes #20035) by @enkelmedia in https://github.com/umbraco/Umbraco-CMS/pull/20036
  • Content Workspace: Invariant Breadcrumbs does not work (fix #20423) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20428
  • Adjust styling for inherited content type property by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20261
  • Block Workspace: dynamic headline & browser title by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20424
  • Content Type Designer: Fix moving a group to an inherited tab by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20138
  • Migrations: Adjust the JsonBlockValueConverter to handle conflicts with 'values' property by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20429
  • Color Picker: Validate uniqueness of selected colors by @Programeerik in https://github.com/umbraco/Umbraco-CMS/pull/20431
  • Emails: Add Expires header by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/20285
  • Members: Forward port of fix for member lockout issue #16988 from PR #17007 for 16 by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20441
  • Icon Picker: Fit icons scroll container to modal height by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20438
  • Refactoring: Fixed spelling mistake in method name by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20460
  • UX: Center align log type in media history view by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20469
  • Recycle Bin: Trigger cache invalidation for trashed document/media items by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20483
  • UFM: Adds $index support to Block editors (fixes #20470) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20488
  • Delivery API: Fix not reindexing branch descendants when branch root already published but unchanged (closes #20370) by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/20462
  • Delivery API: Provided culture to the ApiContentRouteBuilder, fixing issue with route path on preview requests for language variant content (closes #20366) by @andersreus in https://github.com/umbraco/Umbraco-CMS/pull/20499
  • UFM: Add camelCase aliases for UFM filters to support UFMJS expressions (closes #20500) by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/20501
  • WorkspaceView: Add tests for create and using custom workspace view by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20408
  • Dashboard: Add tests for create and using custom dashboard by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20253
  • Content Types: Prevent creation of document type with an alias that case insensitively matches an existing alias (closes #20467) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20471
  • Back Office: Fixes link to workspace root from breadcrumb trail (closes: #20455) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20459
  • Fixes 20476 - Changes icon to be no entry sign by @warrenbuckley in https://github.com/umbraco/Umbraco-CMS/pull/20496
  • Don't use non-generic ILogger as a fallback in BlockEditorPropertyValueEditor by @BenWhite27 in https://github.com/umbraco/Umbraco-CMS/pull/20532
  • Management API: Added trashed state so when requesting content from the recycle bin it will return trashed instead of draft or published state by @andersreus in https://github.com/umbraco/Umbraco-CMS/pull/20542
  • Preview: Redirect to published URL on exit by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20556
  • E2E: QA Fixed the flaky tests related to publishing content with image cropper by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20577
  • Tiptap RTE: Allow removal of unregistered extensions by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20571
  • Hybrid Cache: Resolve start-up errors with mis-matched types (closes #20537) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20554
  • Media: Fixes SQL error to ensure database relation between user group media start folder and deleted media item is removed (closes #20555) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20572
  • Publishing: Resolve exceptions on publish branch by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20464
  • Migrations: Use reliable GUID to check for existence of data type when creating (closes #20592) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20604
  • Webhooks: Register OutputExpansionStrategy for webhooks if Delivery API is not enabled (closes #20272) by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/20559
  • Content picker: Implement a specific sorting method for statuses (closes #20646) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20609
  • Trees: Prevent file system trees showing other file types that aren't supported for editing by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/20567
  • Trees: Restore backward compatibility for file system based tree controllers (closes #20602) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20608
  • Block List: Remove bold label from inline editing by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20437
  • Icon Picker: Fix empty selection allowed on mandatory fields and add validation. by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/20536
  • Don't call generateAlias on #onAliasChange() by @BatJan in https://github.com/umbraco/Umbraco-CMS/pull/20628
  • Media types: Handle null configured file extensions when populating allowed media types (closes #20620) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20635
  • Caching: Resolves publish and install issues related to stale cached data retrieval (closes #20539 and #20630) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20640
  • Section URL Retention: Ability to prevent it for a section by @rammi987 in https://github.com/umbraco/Umbraco-CMS/pull/20637
  • Auth: Cleans up stale or completed auth details from storage by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20725
  • Fix block list inline mode @andrejd22 in https://github.com/umbraco/Umbraco-CMS/pull/20745
  • Preview: Add allow-forms to iframe sandbox attributes by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/20701
  • Detail Request Manager: Use tryExecute for delete API call to enable error notifications by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20607
  • Dictionary: Fix shortcut Ctrl + S not saving dictionary items by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20605
  • Notifications: Explicitly flush isolated caches by key for content updates by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/20519

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.3.4...release-16.4.0-rc2

New Contributors

  • @floede made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20080
  • @psot made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20301
  • @ardelean94 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20346
  • @mdubbelv made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20144
release-13.12.0 Breaking risk
Notable features
  • Allow fetching multiple content and media by Guid and Udi
  • ContentAtRoot() now accepts culture parameter for querying
  • Media Picker implements paging
Full changelog

What's Changed in 13.12.0

📦 Dependencies

  • Update ImageSharp to latest patch releases by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20275
  • Fixed dependency conflicts when installing Microsoft.EntityFrameworkCore.Design (closes #17839) by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20480
  • Dependencies: Update dotnet sdk and node development dependency to latest secure version of current major by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20729

🚀 Improvements

  • Allow fetching multiple content and media by Guid and Udi by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/15289
  • Querying extensions: Allow ContentAtRoot() to accept culture by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20129
  • Media Picker: Implement paging by @landlogicit in https://github.com/umbraco/Umbraco-CMS/pull/20202

🐛 Bug Fixes

  • UX: Fix overflow of umb-editor-header if the description is locked and too long by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/20190
  • Link rendering: Add support for UrlMode parameter in HtmlLocalLinkParser by @rickbutterfield in https://github.com/umbraco/Umbraco-CMS/pull/20200
  • Property editors: Ensure values no longer allowed as options in checkbox list configuration are removed from the value, such that they will be removed from the persisted data when saved by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20208
  • Prevent RTE being marked as dirty when content contains empty paragraph by @mcl-sz in https://github.com/umbraco/Umbraco-CMS/pull/20335
  • Caching: Fixes regression of the caching of null representations for missing dictionary items (closes #20336 for 13) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20344
  • Configuration: Fixed integer overflow in setting MaxRequestBodySize and MultipartBodyLengthLimit by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20348
  • Repositories: UserService.GetAllInGroup fix by @piers-taylor-1994 in https://github.com/umbraco/Umbraco-CMS/pull/20425
  • Members: Do not convert calculated lockedOutUntil time to UTC by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/17007
  • Grid (Legacy): Fix for RTE drag and drop issue (closes #16591) by @bhcoder in https://github.com/umbraco/Umbraco-CMS/pull/20498
  • Notifications: Populate IncludeDescendants on ContentPublishedNotification when publishing branch by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20578
  • Backoffice Caching: Added cache buster for block list stylesheets (closes #20683) by @creativesuspects in https://github.com/umbraco/Umbraco-CMS/pull/20686
  • Fix memory leak with IOptionsMonitor.OnChange and non-singleton registered components (closes #20709) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20722

New Contributors

  • @bhcoder made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20498

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.11.0...release-13.12.0

release-16.3.4 Bug fix

Fixed content picker status ordering and resolved caching issues causing stale data on publish/install.

Full changelog

What's Changed

🐛 Bug Fixes

  • Content picker: Implement a specific sorting method for statuses (closes #20646) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20609
  • Caching: Resolves publish and install issues related to stale cached data retrieval (closes #20539 and #20630) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20640

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.3.3...release-16.3.4

release-16.3.3 Bug fix

Fixed migration checks using a reliable GUID and restored backward compatibility for filesystem-based tree controllers.

Full changelog

What's Changed

🐛 Bug Fixes

  • Migrations: Use reliable GUID to check for existence of data type when creating (closes #20592) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20604
  • Trees: Restore backward compatibility for file system based tree controllers (closes #20602) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20608

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.3.2...release-16.3.3

release-16.3.2 Bug fix

Fixed startup errors in Hybrid Cache caused by mismatched types.

Full changelog

What's Changed

🐛 Bug Fixes

  • Hybrid Cache: Resolve start-up errors with mis-matched types (closes #20537) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20554

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.3.1...release-16.3.2

release-16.3.1 Breaking risk

Fixed regression in block editor base constructor handling.

Full changelog

What's Changed

🐛 Bug Fixes

  • Fixed regression caused by incorrect handling of breaking change on block editor base constructor by @BenWhite27 in https://github.com/umbraco/Umbraco-CMS/pull/20532

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.3.0...release-16.3.1

release-16.3.0 New feature
Notable features
  • Client Cache for Document Type, Data Type detail models
  • Client Cache for Document Item Models
  • Add client runtime cache for all item endpoints
Full changelog

What's Changed

🙌 Notable Changes

  • Feature: Client Cache for Document Type and Data Type Detail Models by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19904
  • Feature: Client Cache for Document Item Models by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19923
  • Feature: Add client runtime cache for all item endpoints by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19960
  • Tiptap RTE: Unbundled "Rich Text Essentials" - Toggle basics on/off per data type by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20042

🏠 Internal

  • build(deps-dev): bump vite from v6 to v7 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19974

📦 Dependencies

  • Chore: upgrade typescript to 5.9 + other minors by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19914
  • Bump vite-plugin-static-copy from 3.1.1 to 3.1.2 in /src/Umbraco.Web.UI.Client by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/19969
  • Bump @hey-api/openapi-ts to 0.81.1 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19982
  • Bump vite from 7.1.3 to 7.1.5 in /src/Umbraco.Web.UI.Client by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/20114
  • Bump vite from 7.1.3 to 7.1.5 in /src/Umbraco.Web.UI.Login by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/20181
  • Dependencies: Update ImageSharp to latest patch releases (16) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20276

🌈 Accessibility Improvements

  • Navigating the App Language Selector with the keyboard by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/19887
  • Profile: Corrected misleading button label by @OskarKruger in https://github.com/umbraco/Umbraco-CMS/pull/20161
  • Tiptap RTE: Adds accessibility attributes for RTE input by @OskarKruger in https://github.com/umbraco/Umbraco-CMS/pull/20157
  • Workspace Actions: set attributes on the right element for label to work by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20178
  • Tags Property Editor: Remove tags with keyboard backspace/delete by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/19892
  • Accessibility changes for the top navbar tabs and settings tabs by @Abdjulaziz in https://github.com/umbraco/Umbraco-CMS/pull/20107
  • Update label for tree item caret to identify if open or closed by @OskarKruger in https://github.com/umbraco/Umbraco-CMS/pull/20199
  • Tiptap RTE: Adds hover and focus border input states by @OskarKruger in https://github.com/umbraco/Umbraco-CMS/pull/20172
  • Installer: Improves user accessibility by adding missing elements and setting the right focus by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20265
  • Allow open split view using the keyboard by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/19927

🚀 New Features

  • Update dotnet new umbraco-extension template with newer @hey-api/openapi-ts by @warrenbuckley in https://github.com/umbraco/Umbraco-CMS/pull/19825
  • Workspace view navigation context by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19255
  • Add timestamps to cache entries and server events by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19976
  • Block workspace view validation badges by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19987
  • Section Sidebar Menu Expansion by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19810
  • Structure manager refactor implementation by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19970
  • Moves icon dependencies to 'core' package.json by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20041
  • Tiptap RTE: Migration to auto-enable new capabilities by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20057
  • Database creation/migration for UFM Label editor data-types by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20055
  • Workspace View Manifest Overrides by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20033
  • Property Editors: Add Missing Property Editor fallback by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19997
  • Variants: Implements validation hints to the variant selector (closes #19953) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20179
  • Interaction Memory: Feature for picker modal state retention (#18305) by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20159
  • View Context: Implement browser title by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20145
  • Icons: Add more heading icons by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20242
  • Tiptap RTE: Adds heading (h4-h6) toolbar buttons by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20243
  • Introduced sign providers for trees and implemented one for documents with schedule pending by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19806
  • Feature: Inflight Request Cache for Document Types and Data Types by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19956
  • Feature: Redirect to the last visited path when navigating between sections by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20084
  • Introducing signs to variants by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/20053
  • Add Vietnamese to UI culture by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/20061

🐛 Bug Fixes

  • Fixed behaviour on database cache rebuild to update only for requested content types by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19905
  • Fix and enable some unit tests which are not running locally or on pipeline builds by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/19910
  • Ensure appropriate create and update dates are set on updated dictionary items to allow distinguishing between created and update for server events by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19925
  • QA Fixed failing E2E test by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19931
  • Fix TipTap word count extension state sharing between multiple editors by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/19943
  • Add comprehensive GitHub Copilot instructions for Umbraco CMS development by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/19946
  • Refactoring DatabaseCacheRepository to de-duplicate code and remove warnings by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19942
  • Adds id to the webhook item response model by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19947
  • Handle content blueprint server events by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19949
  • Fix to management API models reverting addition of read-only property by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19951
  • Fix language server events to emit 'Updated' instead of 'Created' for updates by @Copilot in https://github.com/umbraco/Umbraco-CMS/pull/19941
  • Fix issue console error when navigating to document type template tab by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19913
  • QA Added acceptance tests for removing user groups from a user by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19994
  • QA Fixed the E2E failing tests by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19993
  • Replacing media files does not update the preview by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19912
  • Tiptap RTE: Toolbar configuration sorter by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19901
  • Unwarranted redirect after auth by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19935
  • Ensure the directory exists before creating the SQLite database by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19980
  • QA added acceptance test for issue 10431 by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/19999
  • Fix: custom block view rendering freezes the Backoffice by @andrejd22 in https://github.com/umbraco/Umbraco-CMS/pull/19962
  • Add request caching around published content factory by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19990
  • Prevents the removal of all user groups from a user by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19995
  • Implement root property validation for member workspace by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19972
  • QA Updated flaky tests by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/20052
  • Fix issue with newly created template under an existing one by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19669
  • Creating a new sub template should not show Discard Changes dialog by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20068
  • Create the document URLs lock database record introduced in 16 but required in a 15 migration by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20064
  • Perform value detection at all property value levels by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/20067
  • Fixes exception when converting UDIs in a PropertyValueConverter by @AaronSadlerUK in https://github.com/umbraco/Umbraco-CMS/pull/20011
  • Content Type Designer: fix style and localization by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20073
  • Content Type Designer tabs sorting improvement by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20074
  • Fix spell error from "Segmment" to "Segment" in the IRequestSegment interface by @rammi987 in https://github.com/umbraco/Umbraco-CMS/pull/20010
  • Dropdown: Allow empty option by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20099
  • QA Added acceptance tests for regression issue #17742 by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19996
  • Converting DateTime.MinValue to sqlDateTime's minimum value by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/20019
  • New document segments endpoint by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20088
  • Fixes divide by zero error on retrieving take 0 from the recycle bin root API endpoint by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20096
  • Move persistence of relations from repository into notification handlers by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20095
  • Resolve compostion properties on a block for the RTE. by @rammi987 in https://github.com/umbraco/Umbraco-CMS/pull/20105
  • Updated contributing guidelines to welcome contributions on bugfixes that aren't specifically marked as "up for grabs" by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20086
  • Correct the population of the parent for sibling items when retrieved under a folder by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20083
  • Independently manage integrated authentication and trust certificate fields on installer from database settings by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20070
  • Block editors: resolves clipboard UFM label by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20102
  • Adding validation for missing media items by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/20101
  • Repositories: Use NPoco extensions in DatabaseCacheRepository by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/19955
  • keepUserLoggedIn has no effect by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20123
  • Fix member validation endpoints by @Zeegaan in https://github.com/umbraco/Umbraco-CMS/pull/20116
  • Tiptap RTE: Fixes undo when RTE is emptied by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20133
  • AppSettings: Improves the templates so they reflect the latest recommended settings by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20148
  • Cherry-pick #20142 for V16 by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/20147
  • Property Value Preset builder caller args by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20111
  • Avoid throwing an exception on getting references when migrating content with changed data types (16) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20155
  • Generated Partial Views: Improves the generated code slightly for a better developer experience by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20151
  • #19736 adjust drag placeholder for document picker by @enkelmedia in https://github.com/umbraco/Umbraco-CMS/pull/19737
  • Improvement - Content type filters : Add Validation for allowed children and root by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19903
  • Member workspace: Fix for loading inside modal by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20163
  • Content Type Designer: Fix to prevent dragging inherited properties by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20136
  • Mark MemberService.GetMembersByPropertyValue() methods as obsolete by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20092
  • Release Notes: Improved readability for Accessibility tag in the Update release.yml by @BerglindV in https://github.com/umbraco/Umbraco-CMS/pull/20135
  • Extension Insights: Fixes CSS alignment (fixes #20170) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20174
  • Property Editors: Improve Missing Property Editor UI and allow save/publish by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20104
  • QA cherry picked acceptance tests with different configuration by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/20106
  • Content Variant: Preserve additional URL path in split view navigation (closes #17412) by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20177
  • Dynamic Root: Fix missing dynamicRootQueryStep types (closes #19612) by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20183
  • E2E nightly pipeline: Fix the Tiptap failing tests by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/20194
  • Badge: Make badge go on top by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20196
  • Icons: add badge icon by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20201
  • Content/Document Picker: make not existing items appear by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20198
  • Management API: Add user data delete endpoint (closes #19793) by @ustadstar in https://github.com/umbraco/Umbraco-CMS/pull/20040
  • Tree: Optimize tree root total children calls by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/20192
  • Docs: Updated contribution guidelines to include PR naming best practices by @BerglindV in https://github.com/umbraco/Umbraco-CMS/pull/20180
  • Link rendering: Add support for UrlMode parameter in HtmlLocalLinkParser (port to 16) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20207
  • Permissions: Fix removal of check on removal the final admin user (closes #19917) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19921
  • Caching: Don't remove null values from hybrid cache to avoid broken content references repeatedly requiring a database hit (closes #18892) by @Zeegaan in https://github.com/umbraco/Umbraco-CMS/pull/20209
  • Shortcuts: Implement context and a few shortcuts of interest by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20204
  • Property Editors: Fix DecimalPropertyEditor on non-English systems (closes #20214) by @arknu in https://github.com/umbraco/Umbraco-CMS/pull/20215
  • Member Workspace: Fixes property validation (closes #20210) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20222
  • Trees: Expanding sibling endpoints to include all entities with trees by @NillasKA in https://github.com/umbraco/Umbraco-CMS/pull/20150
  • Localization: Fixes an issue where the fallback localization was not available after changing DefaultUILanguage (fixes #20216) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20230
  • Add test for sibling endpoint returning parent id even when its a folder by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/20118
  • Block List: Fixed clipboard label for nested block items (closes #19929) by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20223
  • UX: Alignment of date range in log viewer (closes #20220) by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20244
  • UX: Make installed package details read only instead of disabled (closes #20218) by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20246
  • UX: Align height of image crop appended units (closes #20166) by @bjarnef in https://github.com/umbraco/Umbraco-CMS/pull/20245
  • Collection view: Wrong Last edited date displayed in document collection view (closes #19988) by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/20235
  • Dropdown: Support migrated empty values (closes #20237) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20247
  • View Context: rename setBrowserTitle to setTitle by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20248
  • Upload field Property Editor: Fix resetting value to undefined when empty by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/20134
  • Mocks: Replaced signs for flags by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20293
  • AllowEditInvariantFromNonDefault : Fix property write guard to use correct variant ID (closes #20250) in #20277
  • Caching: Fixes regression of the caching of null representations for missing dictionary items (closes #20336) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20349
  • Hybrid cache: Check for ContentCacheNode instead of object on exists for hybrid cache to ensure correct deserialization (closes #20352) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20383
  • Performance: Added request cache to media type retrieval in media picker validation, resolving performance regression in validate and save by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20405

New Contributors

  • @BerglindV made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/20135

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.2.0...release-16.3.0

release-13.11.0 Bug fix
Notable features
  • Added Arabic (ar) back‑office translation
Full changelog

What's Changed in 13.11.0

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.11.0-rc2...release-13.11.0

What's Changed in 13.11.0-rc2

🐛 Bug Fixes

  • Caching: Fixes regression of the caching of null representations for missing dictionary items (closes #20336) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20344

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.11.0-rc...release-13.11.0-rc2

What's Changed Since The Last Release (13.10.1)

🐛 Bug Fixes

  • List views: The filter param should be URL encoded (closes #19773) by @AaronSadlerUK in https://github.com/umbraco/Umbraco-CMS/pull/19774
  • Permissions: Content picker search with start node configured not taking user start nodes into account (closes #19432) by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19800
  • Preview: Use a regex to filter our invalid culture codes rather than relying on the culture being installed on the operating system (closes #19817) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19821
  • Authentication: Retain original backoffice location on login after timeout (closes #19971 and #20050 ) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19984
  • Delivery API: Support query string and anchor for local links in output by (closes #18475) @kjac in https://github.com/umbraco/Umbraco-CMS/pull/20142
  • Migrations: Avoid throwing an exception on getting references when migrating content with changed data types (closes #19784) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/20079
  • Engage: Adds property awareness to validation context to avoid potential infinite loops (closes #19654) by @cornehoskam in https://github.com/umbraco/Umbraco-CMS/pull/19827
  • Engage: Make notification service able to handle segmented content (closes #20045) by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/20160
  • Persistence: Fix issue with use of EF Core scopes within notification handlers (closes #18977) by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/19797

🌐 Localization

  • Localization: Add Arabic (ar) backoffice translation by @wpplumber in https://github.com/umbraco/Umbraco-CMS/pull/19896

New Contributors

  • @wpplumber made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/19896

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.10.1...release-13.11.0-rc

release-13.10.1 Security relevant
Security fixes
  • Dependency update: Smidge upgraded to version 4.6 which resolves a reported vulnerability (see https://github.com/asust9/smidge-vuln?tab=readme-ov-file).
Full changelog

🔒 Security updates

  • Updated to use latest dependency of Smidge. Smidge 4.6 was recently released to handle a reported vulnerability and Umbraco now has a dependency on this secured version.

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.10.0...release-13.10.1

release-16.2.0 Breaking risk
Notable features
  • JavaScript-like expressions in UFM
  • Sibling endpoints for content/media navigation
  • markedExtension extension-type and Block Settings data exposure in UFM
Full changelog

What's Changed

🙌 Notable Changes

  • UFM: JavaScript-like Expressions by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19685
  • Make logging more friendly for docker by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/19818
  • Adds abstraction around boot time checks for database availability by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19848
  • Optimize document and media seeding by looking up from database in batches by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19890
  • Added configuration option UseStrictDomainMatching, which allows control over whether content is routed without a matching domain by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19815

📦 Dependencies

  • Bump linkifyjs from 4.3.1 to 4.3.2 in /src/Umbraco.Web.UI.Login by @dependabot[bot] in https://github.com/umbraco/Umbraco-CMS/pull/19819
  • Tiptap RTE: Upgraded to latest v2.x by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19869
  • build(deps): bump @umbraco-ui/uui to 1.15.0 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19981

🚀 New Features

  • V16: Siblings endpoints by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/19657
  • UFM: Adds markedExtension extension-type by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19684
  • UFM: Make Block Settings data available by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19686
  • Adds background worker to check timeout state by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19702
  • V16: Build Backoffice externals with Vite by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19716
  • Tiptap RTE: Custom CSS Variables for min/max height/width by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19841
  • Provides an abstraction for creating the JavaScriptEncoder used in SystemTextConfigurationEditorJsonSerializer by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19849
  • Tiptap RTE: Refactor Table menus to use menu extension-type by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19789

🐛 Bug Fixes

  • Amend accessibility modifiers on file upload property editor components to support extension by @PeterKvayt in https://github.com/umbraco/Umbraco-CMS/pull/19643
  • Docs: Tree example by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19624
  • Hide Document/Media Collection Workspace View until the item is created by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19644
  • Title returns "Server Error" in non-debug mode by @PeterKvayt in https://github.com/umbraco/Umbraco-CMS/pull/19665
  • Fix issue with preview in delivery API for MNTP property editor by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19668
  • Adds support for custom granular permissions when aggregating across user groups by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19660
  • Fixes issues with creation of documents from blueprints that have populated file upload properties by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19655
  • Clear member cache by older user name when member user name is updated (16) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19690
  • V16 QA Removed unused API acceptance tests by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19679
  • V16 QA Added acceptance tests for granular document permission by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19546
  • V16 QA Reverted npx command by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19699
  • Fixes Block Catalogue Modal Filter by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19700
  • Fix issue forceHideContentEditorInOverlay not available in RTE by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19698
  • V16: Property editor file upload does not validate file types by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19714
  • Fix failing integration tests in SQL Server by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19725
  • Populate name for content and media on URL picker if title is left empty by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19677
  • Forward merge #19720 to V16 by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/19735
  • Include /.well-known/jwks in the paths covered by OpenIddict by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/19749
  • Add flag to exclude trashed media by @rammi987 in https://github.com/umbraco/Umbraco-CMS/pull/19746
  • V16 Added acceptance tests for the regression issue #16985 by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19712
  • V16 Added acceptance tests for the regression issue #19529 by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19713
  • V16 QA Added acceptance tests for creating a document using blueprint by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19708
  • Allow saving blueprints with validation errors by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19748
  • Make internal & private classes sealed where possible, to avoid code for virtual dispatch by @Henr1k80 in https://github.com/umbraco/Umbraco-CMS/pull/19719
  • add missing translation for DA by @rammi987 in https://github.com/umbraco/Umbraco-CMS/pull/19740
  • Add a backing field for EditorUIAlias and track changes when its set. by @KevinJump in https://github.com/umbraco/Umbraco-CMS/pull/19733
  • Template with Block List field with Inline Editing Mode causes Collection List View to shrink by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19754
  • Make the OpenAPI security scheme name for the Management API valid by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/19762
  • Return 404 on delivery API requests for segments that are invalid or not created by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19718
  • Add defensive coding to the member application initializer (16) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19764
  • Repository Details Manager: Prevent making requests for empty arrays by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19731
  • Reloads the template tree when creating a document type with a template by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19769
  • Fires the updated event when content types are updated by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19768
  • Abstract submit and poll operations by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19688
  • V16 QA Added acceptance tests for the 'create document' user permission by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19770
  • Log the migration plan name when can't migrate from state by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19772
  • #19775 fixed get user data by applying OrderBy after counting by @enkelmedia in https://github.com/umbraco/Umbraco-CMS/pull/19776
  • Fix missing tag suggestions when no culture available. by @BenWhite27 in https://github.com/umbraco/Umbraco-CMS/pull/19694
  • Fix navigationUrlService and underlying models not being thread safe by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/19689
  • Fix null reference exception when removing all blocks from shared RTE in culture variant content by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19771
  • Tiptap RTE: Clear Formatting, resets nodes to "paragraph" by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19781
  • Fix issue with use of EF Core scopes within notification handlers (take 2 - handling scopes with a base parent) by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/19797
  • Fix issue unsaved changes always displayed when trying to move away from blueprint by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19804
  • Tiptap RTE: Include Tiptap's default styles by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19805
  • Tiptap RTE: Localized Character/Word Count button labels by @rammi987 in https://github.com/umbraco/Umbraco-CMS/pull/19745
  • V16/docs work extensions example by @hifi-phil in https://github.com/umbraco/Umbraco-CMS/pull/19809
  • V16 QA Added acceptance tests for the block with RTE in a Content by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19795
  • Tiptap RTE: Block selection by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19811
  • Tiptap RTE: drag-and-drop image upload by @andrejd22 in https://github.com/umbraco/Umbraco-CMS/pull/19826
  • V16: Fix issue not display hidden tab name by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19370
  • Add drag and drop to blockgrid area by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19383
  • V16 QA Updated acceptance tests with skip() and fixme() tag by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19397
  • Media Table Collection View: Adds support for Label Templates by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19842
  • Omit datetime from JSON conversion that converts from strings by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/19807
  • Add testing to workspace counter examples by @hifi-phil in https://github.com/umbraco/Umbraco-CMS/pull/19838
  • Docs: Storybook clean up round 1 by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19673
  • Add pagination and total to examine dashboard by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19847
  • Bugfix/19601 can not add ef core migrations by @idseefeld in https://github.com/umbraco/Umbraco-CMS/pull/19846
  • Umbraco Engage UmbracoUrlAlias Fix - Fixes #19654 (#19827) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19850
  • Fix issue create media folder throw error by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19854
  • Added user start node restrictions to sibling endpoints by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19839
  • Retrieves item counts before and after the target for sibling endpoints and returns in API response by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19844
  • clean up double exports by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19859
  • 16 QA added relation type tests by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/19490
  • Code Editor (PE): Fixes language syntax highlighting by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19864
  • Hide property has sensitive data with normal user by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19857
  • V16: Tree Stores should be optional to use by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19858
  • V16 QA Implement new release tag for E2E tests by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19697
  • Ensure block values aren't null before attempting to process them on removal by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19645
  • V16 QA add slack webhook for e2e tests by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/19866
  • Tiptap RTE: Undo deleted blocks by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19851
  • Fix logic with check for duplicate container name at level by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19803
  • Use GeneratedRegex, FrozenSet, new Lock object & static by @Henr1k80 in https://github.com/umbraco/Umbraco-CMS/pull/19872
  • V16 Added acceptance tests for regression issues by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19874
  • Umbraco logo label update by @engijlr in https://github.com/umbraco/Umbraco-CMS/pull/19875
  • Fixed layout and formatting of saved search delete dialog on the log viewer by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19855
  • Adds support for the "folders only" flag on retrieving siblings of a node. by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19861
  • Remove property value permissions when related content and/or property types are removed by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19778
  • Fixes the Checkbox, Dropdown and Select list when the models change the UI updates. by @readingdancer in https://github.com/umbraco/Umbraco-CMS/pull/19487
  • V16 Added acceptance tests for issue #17753 by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19876
  • Tiptap RTE: Fixes embedded media spacing by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19878
  • Tiptap RTE: Reduce loading layout shift by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19860
  • Moving properties between groups sometimes clears their values by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19881
  • Content picker search with start node configured not taking user start nodes into account by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19871
  • Fix #19675 by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19891
  • Fix #19676 by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19886
  • V16: Media Picker property editor should allow more dropped and picked files, and other enhancements by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19900
  • Adds configuration for document and media hybrid cache seed batch size by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19894
  • Close dropdown when "Reload"-Entity Action has executed by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19808
  • Handle segmentation when segment alias includes underscore character(s) by @nathanwoulfe in https://github.com/umbraco/Umbraco-CMS/pull/19782
  • Chore: JSDocs for RTE CSS Props by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/20008
  • fix: pins the UmbracoExtension @hey-api/* versions to that of the Backoffice client by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/20016

New Contributors

  • @BenWhite27 made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/19694

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.1.1...release-16.2.0

release-13.10.0 Bug fix
Notable features
  • Support for programmatic creation of property types using data type key
Full changelog

What's Changed Since 13.10.0-rc

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.10.0-rc...release-13.10.0

What's Changed Since The Previous Release (13.9.3)

🐛 Bug Fixes

  • Fix: #18421 - Added Max Length validation to PropertyTypeBasic Alias by @danielhnelson in https://github.com/umbraco/Umbraco-CMS/pull/18427
  • Fixed check for navigation to list after delete of member by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19364
  • Fix issue with requests to delivery API by path where URL segment contains special characters by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19390
  • Removes unnecessary newlines from rich text as JSON delivery API output by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19391
  • Lock appropriate tree for media operations by @rbottema in https://github.com/umbraco/Umbraco-CMS/pull/19422
  • Resolved exception thrown from NuCache locking mechanism on near-simultaneous content publish requests by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19434
  • Ensure tag operations are case insensitive on insert across database types by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19439
  • Add a warning to the CreateContentFromBlueprint method xml docs by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19542
  • Preserve word boundaries when indexing RTE content with
    tags by @steveatkiss in https://github.com/umbraco/Umbraco-CMS/pull/19540
  • Fix pagination in Content Delivery API Index Helper by @Brynjarth in https://github.com/umbraco/Umbraco-CMS/pull/19606
  • Ensures that null values aren't used to create a CompositeStringStringKey by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19646
  • #16772 partial fix backoffice redirect after login by @kows in https://github.com/umbraco/Umbraco-CMS/pull/19663
  • Clear member cache by older user name when member user name is updated (13) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19672
  • Register no-op implementation of IMemberPartialViewCacheInvalidator in headless setups by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19666
  • Adds variation by the header name Accept-Language to the delivery API output cache policy by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19709
  • Add support for programmatic creation of property types providing the data type key by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19720
  • Parse update date before sorting in media list view by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19711
  • Add defensive coding to the member application initializer by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/19760
  • Retrieve only user external logins when invalidate following removal of backoffice external user login by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19766

🚤 Performance Optimizations

  • Optimize the member save as part of the member login process, by-passing locking and audit steps and handling only the expected update properties by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19308

New Contributors

  • @danielhnelson made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/18427
  • @steveatkiss made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/19540
  • @Brynjarth made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/19606

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.9.3...release-13.10.0-rc

release-16.1.1 Security relevant
Security fixes
  • dep: GHSA-75vq-qvhr-7ffr — Delivery API returns cached requests despite invalid API key
Full changelog

🔒 Security updates

  • Fixed issue where Delivery API allows for cached requests to be returned with an invalid API key - GHSA-75vq-qvhr-7ffr

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.1.0...release-16.1.1

release-15.4.4 Security relevant
Security fixes
  • GHSA-75vq-qvhr-7ffr — Delivery API allows cached requests with an invalid API key
Full changelog

🔒 Security updates

  • Fixed issue where Delivery API allows for cached requests to be returned with an invalid API key - GHSA-75vq-qvhr-7ffr

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-15.4.3...release-15.4.4

release-13.9.3 Security relevant
Security fixes
  • GHSA-75vq-qvhr-7ffr — Delivery API returns cached requests even with an invalid API key
Full changelog

🔒 Security updates

  • Fixed issue where Delivery API allows for cached requests to be returned with an invalid API key - GHSA-75vq-qvhr-7ffr

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.9.2...release-13.9.3

release-16.1.0 Breaking risk
Breaking changes
  • Further fix to configuration classes using ISet, resolving regression with custom 404 pages
Security fixes
  • Fix for code scanning alert no. 1719: Client‑side cross‑site scripting (XSS)
Notable features
  • Adds a state for "forbidden" (HTTP 403) on entities
  • Changed the Image crop UI component to fit the new Backoffice UI design
  • Member Type Root Collection View / Workspace
Full changelog

What's Changed Since 16.1.0-rc

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.1.0-rc...release-16.1.0

What's Changed Since The Previous Release (16.0.0)

🙌 Notable Changes

  • V16: Retry requests after timeout by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19495
  • Add support for file upload property editor within the block list and grid by @PeterKvayt in https://github.com/umbraco/Umbraco-CMS/pull/18976

💥 Breaking Changes

  • Further fix to configuration classes using ISet, resolving regression with custom 404 pages by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19573

📦 Dependencies

  • Bump vite from 6.2.6 to 6.3.4 in /src/Umbraco.Web.UI.Client by @dependabot in https://github.com/umbraco/Umbraco-CMS/pull/19206
  • Bump vite from 6.2.6 to 6.3.4 in /src/Umbraco.Web.UI.Login by @dependabot in https://github.com/umbraco/Umbraco-CMS/pull/19218
  • Bump vite from 6.3.2 to 6.3.5 in /src/Umbraco.Web.UI.Client by @dependabot in https://github.com/umbraco/Umbraco-CMS/pull/19231
  • Bump vite from 6.2.6 to 6.3.5 in /src/Umbraco.Web.UI.Login by @dependabot in https://github.com/umbraco/Umbraco-CMS/pull/19236
  • Bump tar-fs from 3.0.8 to 3.0.9 in /src/Umbraco.Web.UI.Client by @dependabot in https://github.com/umbraco/Umbraco-CMS/pull/19468
  • build(deps): bump @umbraco-ui/uui from 1.14.0 to 1.14.1 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19636
  • V16: Upgrade Storybook from V8 to V9 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19640
  • build(deps): bump @umbraco-ui from 1.14.1 to 1.14.2 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19656

🌈 A11Y

  • add overflow:visible to allow the workspace action menu to be highlighted by @manutdkid77 in https://github.com/umbraco/Umbraco-CMS/pull/18391
  • Tiptap RTE: A11Y label improvements by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19531

🚀 New Features

  • Changed the Image crop UI component to fit the new Backoffice UI design by @Abdjulaziz in https://github.com/umbraco/Umbraco-CMS/pull/19204
  • Member Type Root Collection View / Workspace by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19271
  • Media Picker Modal File Previews by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19335
  • Feature: Content Workspace Icon by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19292
  • update next icon by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19424
  • Translations for pt (pt-PT) by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19435
  • Tiptap RTE: Toolbar menu active highlighting by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19532
  • Add folder workspace icon by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19366
  • V16: Adds a state for "forbidden" for entities that return 403 (Access denied) by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19557
  • Introduce Section Alias condition const by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19633
  • Label property-editor, adds UFM template support by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19610

🐛 Bug Fixes

  • Allow deselection of colour picker property by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19174
  • V16 QA update failing nightly tests by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/19190
  • Tiptap cannot set the top position of the toolbar by @enkelmedia in https://github.com/umbraco/Umbraco-CMS/pull/19087
  • V16 QA Fixed nightly test pipeline by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19226
  • Create Localization Contributing Documentation by @DitteKKoustrup in https://github.com/umbraco/Umbraco-CMS/pull/18412
  • V16 QA Updated the nightly test pipeline to run against the main branch by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19261
  • Fix: Ensure minimum height for Block List Custom Views (#18398) by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19253
  • V16 QA Added acceptance tests for publishing with descendants by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19262
  • Cannot view audit logs when they contain entries with user id 0 by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19263
  • Fix localiztion for buttons in pagination by @NguyenThuyLan in https://github.com/umbraco/Umbraco-CMS/pull/19006
  • Change CONTRIBUTING.md to fit the new github style and also the branc… by @Abdjulaziz in https://github.com/umbraco/Umbraco-CMS/pull/19246
  • V16 QA Updated E2E nightly pipeline by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19355
  • Fix for invalid state in JsonBlockValueConverter when an unused layout has a nested array by @karl-sjogren in https://github.com/umbraco/Umbraco-CMS/pull/19363
  • Handle user id 0 (Unknown/System) when building content version response by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19361
  • fix: check for NullRepresentationInCache in AppCacheExtensions by @crjc in https://github.com/umbraco/Umbraco-CMS/pull/19350
  • V16 Updated nightly E2E pipeline to run correct test scripts by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/19378
  • Use correct service name in obsoletion method by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/19398
  • Cleaned up constructors, regions and variables in NewDefaultUrlProvider by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19403
  • Do not set icon color if the item is selected by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19404
  • Throw if attempting to use the default unique media path scheme with version 7 GUIDs by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19419
  • Sort available composition folders by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19373
  • Use the proper umb-input-date events in the log viewer date range element by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19451
  • Update references to Umbraco User model (Extension Template) by @Rockerby in https://github.com/umbraco/Umbraco-CMS/pull/19349
  • V16 Added acceptance tests for document property value permission by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19385
  • V16 cherry pick of member partial cache invalidator see #19314 by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/19459
  • Add unit test verifying dockerfile aligns with current target framework by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19445
  • Fixed JSDoc comment for ManifestBase.weight by @karl-sjogren in https://github.com/umbraco/Umbraco-CMS/pull/19488
  • V16 QA updated notification acceptance tests by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/19469
  • V16 QA Publish Console Error Logs by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/19417
  • Manifest Viewer to support number and boolean by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19478
  • Adds attribute to ensure management API requests are never cached in the browser or via a CDN by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19496
  • Tiptap RTE: Toolbar/statusbar config initial value state by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19514
  • Update template to reference latest LTS version by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19517
  • Tiptap RTE: Style Menu action toggles by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19520
  • Replace keys in Rich Text Editor blocks on clone operations by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19526
  • V16: Item and Detail Base Repository should use correct typings for return types by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19447
  • Added start-up logging of document URL caching by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19538
  • V16 QA Added acceptance tests for granular property value permission by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19458
  • Removed duplicate/obsolete code fixing issue with document move permission checks by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19552
  • V16 QA Added acceptance tests for Webhook by @nhudinh0309 in https://github.com/umbraco/Umbraco-CMS/pull/19545
  • Docs: Collection example by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19593
  • Improves the layout on the create blueprint dialog by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19556
  • Variant workspace breadcrumb item parentheses by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19599
  • V16: Document shows blank page when clicking an active link by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19553
  • Simplify creating content from a blueprint programmatically by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19528
  • Add missing media exports by @WoutVanBoxem in https://github.com/umbraco/Umbraco-CMS/pull/19585
  • Cherry picked #19540 to V16 (and fixed changed signatures) by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/19592
  • v16 QA Remove smoke tag from flaky test by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/19611
  • Remove trash success notifications by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19534
  • DocumentUrlDataResolver: Use UMB_VARIANT_CONTEXT instead of UMB_PROPERTY_DATASET_CONTEXT by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19537
  • Tiptap RTE: Adds token for statusbar context by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19530
  • V16.1: Fix broken content creation when using blueprints by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19518
  • Show success/failed state for workspace buttons with additional options by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19535
  • Table checkbox/icon alignment by @leekelleher in https://github.com/umbraco/Umbraco-CMS/pull/19615
  • load more button component and styling by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19622
  • Adds XML header docs indicating usage of options on NuCacheSerializerType by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19555
  • Assert dates in content editing integration tests to millisecond only by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19513
  • Fix for code scanning alert no. 1719: Client-side cross-site scripting by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19607
  • Fix check for pending package migration to use the package not the plan name by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19509
  • fix: json serialization and deserialization for NuCacheSerializerType by @davorzlotrg in https://github.com/umbraco/Umbraco-CMS/pull/19617
  • Avoid async await Task.FromResult, plus some other minor tweaks by @Henr1k80 in https://github.com/umbraco/Umbraco-CMS/pull/19597
  • Reduce lookups needed in ConcurrentDictionaries in ContentNavigationServiceBase by @Henr1k80 in https://github.com/umbraco/Umbraco-CMS/pull/19603
  • set height to match workspace top bar by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19384
  • ability to hide block actions by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19626
  • Entity type + Entity Unique conditions by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19614
  • V15 Bugfix: Horizontal scrollbar in Media section #19479 by @Lili-Rossiter in https://github.com/umbraco/Umbraco-CMS/pull/19541
  • Fix readonly UI for create document user permission by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19554
  • React on late read only guard rules by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19621
  • Removes full-width from toggle property editor by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19641
  • Aligned jsdoc and inferred function type on UmbCurrentUserContext by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19642
  • observable for detecting if split view is active by @nielslyngsoe in https://github.com/umbraco/Umbraco-CMS/pull/19394
  • Collection rendering performance improvements Part 1: Improve Entity actions render performance by @madsrasmussen in https://github.com/umbraco/Umbraco-CMS/pull/19605
  • Move cache instructions pruning to background job by @lauraneto in https://github.com/umbraco/Umbraco-CMS/pull/19598
  • V16.1: 400 errors are being wrongfully ignored by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19648
  • V16.1: Never reject a token response by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19651

New Contributors

  • @karl-sjogren made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/19363
  • @crjc made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/19350
  • @WoutVanBoxem made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/19585
  • @davorzlotrg made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/19617

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.0.0...release-16.1.0

release-13.9.2 Security relevant
Security fixes
  • GHSA-pgvc-6h2p-q4f6 — Prevented disclosure of configured password requirements.
Full changelog

🔒 Security updates

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.9.1...release-13.9.2

release-10.8.11 Security relevant
Security fixes
  • dep: GHSA-pgvc-6h2p-q4f6 — prevented disclosure of configured password requirements
Full changelog

🔒 Security updates

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-10.8.10...release-10.8.11

release-16.0.0 Maintenance

Minor fixes and improvements.

Full changelog

What's Changed Since The Last Release Candidate (16.0.0-rc6)

📦 Dependencies

  • build(deps): bump @umbraco-ui/uui to 1.14.0 by @iOvergaard in https://github.com/umbraco/Umbraco-CMS/pull/19524

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-16.0.0-rc6...release-16.0.0

What's Changed For 16.0

See the prior release notes for each release candidate:

  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-16.0.0-rc6
  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-16.0.0-rc5
  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-16.0.0-rc4
  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-16.0.0-rc3
  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-16.0.0-rc2
  • https://github.com/umbraco/Umbraco-CMS/releases/tag/release-16.0.0-rc
release-15.4.3 Bug fix

Optimized initialization of document URLs on startup.

Full changelog

What's Changed

🐛 Bug Fixes

  • Optimize initialization of document URLs on start-up by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19498

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-15.4.2...release-15.4.3

release-13.9.1 Bug fix

Fixed issues when removing user logins after changing external login provider configuration.

Full changelog

What's Changed

🐛 Bug Fixes

  • Fix issues with removal of user logins on change to external login provider configuration (13) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19511

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.9.0...release-13.9.1

release-13.9.0 Bug fix

Fixes file‑path handling in the Delivery API and prevents duplicate domain save notifications.

Full changelog

What's Changed Since 13.9.0-rc

🐛 Bug Fixes

  • Fix null member edge case by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/19463

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.9.0-rc...release-13.9.0

What's Changed Since The Previous Release (13.8.1)

📦 Dependencies

  • Upgrade examine to 3.7.1 by @dawoe in https://github.com/umbraco/Umbraco-CMS/pull/19186

🐛 Bug Fixes

  • Move database cache rebuild to a background task with polling (13) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/18922
  • V13: attempted fix for Datepicker v13 issue #16008 by @Navya-Sinhaa in https://github.com/umbraco/Umbraco-CMS/pull/18903
  • Handle file paths as not found in delivery API by route requests by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19063
  • attempted fix for Save and Preview button #15360 by @Navya-Sinhaa in https://github.com/umbraco/Umbraco-CMS/pull/19138
  • V13 QA updated pipeline for acceptance to avoid issue when installing playwright by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/19140
  • V13: Clear Member Username Cache in Load Balanced Environments by @nikolajlauridsen in https://github.com/umbraco/Umbraco-CMS/pull/19191
  • Fix root path regression for the Delivery API by @kjac in https://github.com/umbraco/Umbraco-CMS/pull/19216
  • TimedScope improvements and login duration clean-up by @ronaldbarendse in https://github.com/umbraco/Umbraco-CMS/pull/19243
  • Handle existing RichTextEditorValue when parsing from markup or JSON structure by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19266
  • Added custom RichTextRegexValidator to validate markup instead of JSON by @tomvanenckevort in https://github.com/umbraco/Umbraco-CMS/pull/19045
  • Invalidate external login session on removal of provider (13) by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19273
  • add single blocklist delete by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/18073
  • [V13] User notifications not sent correctly when having more than 400 users by @vantovic in https://github.com/umbraco/Umbraco-CMS/pull/18370
  • Fix for block grid styling regression issue #15973 by @Lili-Rossiter in https://github.com/umbraco/Umbraco-CMS/pull/19014
  • V13/bugfix/partial cache by @Migaroez in https://github.com/umbraco/Umbraco-CMS/pull/19314
  • V13 QA Updated linux test images to match actual by @andr317c in https://github.com/umbraco/Umbraco-CMS/pull/19309
  • Avoids unnecessary additional domain save notification publishing when sorting an already sorted collection of domains by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19106
  • Adds support for retrieval of data type references when data type is routed using a GUID by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19184
  • User invite email fails if visited more than once without completing by @dchallener in https://github.com/umbraco/Umbraco-CMS/pull/17901
  • Fixed check for navigation to list after delete of member by @AndyButland in https://github.com/umbraco/Umbraco-CMS/pull/19364

New Contributors

  • @Navya-Sinhaa made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/18903
  • @vantovic made their first contribution in https://github.com/umbraco/Umbraco-CMS/pull/18370

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-13.8.1...release-13.9.0

release-15.4.2 Security relevant
Security fixes
  • GHSA-fr6r-p8hv-x3c4 – Prevented bypass of configured allowed extensions for file uploads
Full changelog

🔒 Security updates

Full Changelog: https://github.com/umbraco/Umbraco-CMS/compare/release-15.4.1...release-15.4.2

Beta — feedback welcome: [email protected]