github umbraco/Umbraco-CMS release-16.4.0-rc2
16.4.0-rc2

pre-release7 hours ago

Changes since last RC

πŸ™Œ Notable Changes - Testing encouraged and appreciated!

  • Backoffice Login: Move access/refresh tokens to secure cookies by @kjac in #20779
  • Backoffice Login: Redact back-office PKCE codes from the server (V16) by @kjac in #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.

Changes in previous RC for 16.4.0

πŸ“¦ Dependencies

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

🌈 Accessibility Improvements

πŸš€ New Features

🚀 Performance

  • Performance: Added request cache to media type retrieval in media picker validation by @AndyButland in #20405
  • Performance: Reduce number of database calls in save and publish operations by @AndyButland in #20485
  • Performance: Request cache referenced entities when saving documents with block editors by @kjac in #20590

πŸ› Bug Fixes

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

New Contributors

Full Changelog: release-16.3.4...release-16.4.0-rc2

Don't miss a new Umbraco-CMS release

NewReleases is sending notifications on new releases.