What's Changed
🙌 Notable Changes - Testing encouraged and appreciated!
- Feature: Client Cache for Document Type and Data Type Detail Models by @madsrasmussen in #19904
- Feature: Client Cache for Document Item Models by @madsrasmussen in #19923
- Feature: Add client runtime cache for all item endpoints by @madsrasmussen in #19960
- Tiptap RTE: Unbundled "Rich Text Essentials" - Toggle basics on/off per data type by @leekelleher in #20042
🏠 Internal
- build(deps-dev): bump vite from v6 to v7 by @iOvergaard in #19974
📦 Dependencies
- Chore: upgrade typescript to 5.9 + other minors by @nielslyngsoe in #19914
- Bump vite-plugin-static-copy from 3.1.1 to 3.1.2 in /src/Umbraco.Web.UI.Client by @dependabot[bot] in #19969
- Bump @hey-api/openapi-ts to 0.81.1 by @iOvergaard in #19982
- Bump vite from 7.1.3 to 7.1.5 in /src/Umbraco.Web.UI.Client by @dependabot[bot] in #20114
- Bump vite from 7.1.3 to 7.1.5 in /src/Umbraco.Web.UI.Login by @dependabot[bot] in #20181
- Dependencies: Update ImageSharp to latest patch releases (16) by @AndyButland in #20276
🌈 Accessibility Improvements
- Navigating the App Language Selector with the keyboard by @engijlr in #19887
- Profile: Corrected misleading button label by @OskarKruger in #20161
- Tiptap RTE: Adds accessibility attributes for RTE input by @OskarKruger in #20157
- Workspace Actions: set attributes on the right element for label to work by @nielslyngsoe in #20178
- Tags Property Editor: Remove tags with keyboard backspace/delete by @engijlr in #19892
- Accessibility changes for the top navbar tabs and settings tabs by @Abdjulaziz in #20107
- Update label for tree item caret to identify if open or closed by @OskarKruger in #20199
- Tiptap RTE: Adds hover and focus border input states by @OskarKruger in #20172
- Installer: Improves user accessibility by adding missing elements and setting the right focus by @iOvergaard in #20265
- Allow open split view using the keyboard by @engijlr in #19927
🚀 New Features
- Update dotnet new umbraco-extension template with newer @hey-api/openapi-ts by @warrenbuckley in #19825
- Workspace view navigation context by @nielslyngsoe in #19255
- Add timestamps to cache entries and server events by @madsrasmussen in #19976
- Block workspace view validation badges by @nielslyngsoe in #19987
- Section Sidebar Menu Expansion by @madsrasmussen in #19810
- Structure manager refactor implementation by @nielslyngsoe in #19970
- Moves icon dependencies to 'core' package.json by @iOvergaard in #20041
- Tiptap RTE: Migration to auto-enable new capabilities by @leekelleher in #20057
- Database creation/migration for UFM Label editor data-types by @leekelleher in #20055
- Workspace View Manifest Overrides by @nielslyngsoe in #20033
- Property Editors: Add Missing Property Editor fallback by @lauraneto in #19997
- Variants: Implements validation hints to the variant selector (closes #19953) by @iOvergaard in #20179
- Interaction Memory: Feature for picker modal state retention (#18305) by @madsrasmussen in #20159
- View Context: Implement browser title by @nielslyngsoe in #20145
- Icons: Add more heading icons by @bjarnef in #20242
- Tiptap RTE: Adds heading (h4-h6) toolbar buttons by @bjarnef in #20243
- Introduced sign providers for trees and implemented one for documents with schedule pending by @AndyButland in #19806
- Feature: Inflight Request Cache for Document Types and Data Types by @madsrasmussen in #19956
- Feature: Redirect to the last visited path when navigating between sections by @madsrasmussen in #20084
- Introducing signs to variants by @NillasKA in #20053
- Add Vietnamese to UI culture by @NguyenThuyLan in #20061
🐛 Bug Fixes
- Fixed behaviour on database cache rebuild to update only for requested content types by @AndyButland in #19905
- Fix and enable some unit tests which are not running locally or on pipeline builds by @idseefeld in #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 #19925
- QA Fixed failing E2E test by @nhudinh0309 in #19931
- Fix TipTap word count extension state sharing between multiple editors by @Copilot in #19943
- Add comprehensive GitHub Copilot instructions for Umbraco CMS development by @Copilot in #19946
- Refactoring DatabaseCacheRepository to de-duplicate code and remove warnings by @AndyButland in #19942
- Adds id to the webhook item response model by @AndyButland in #19947
- Handle content blueprint server events by @AndyButland in #19949
- Fix to management API models reverting addition of read-only property by @AndyButland in #19951
- Fix language server events to emit 'Updated' instead of 'Created' for updates by @Copilot in #19941
- Fix issue console error when navigating to document type template tab by @NguyenThuyLan in #19913
- QA Added acceptance tests for removing user groups from a user by @nhudinh0309 in #19994
- QA Fixed the E2E failing tests by @nhudinh0309 in #19993
- Replacing media files does not update the preview by @iOvergaard in #19912
- Tiptap RTE: Toolbar configuration sorter by @NguyenThuyLan in #19901
- Unwarranted redirect after auth by @iOvergaard in #19935
- Ensure the directory exists before creating the SQLite database by @AndyButland in #19980
- QA added acceptance test for issue 10431 by @andr317c in #19999
- Fix: custom block view rendering freezes the Backoffice by @andrejd22 in #19962
- Add request caching around published content factory by @AndyButland in #19990
- Prevents the removal of all user groups from a user by @AndyButland in #19995
- Implement root property validation for member workspace by @nielslyngsoe in #19972
- QA Updated flaky tests by @andr317c in #20052
- Fix issue with newly created template under an existing one by @AndyButland in #19669
- Creating a new sub template should not show Discard Changes dialog by @iOvergaard in #20068
- Create the document URLs lock database record introduced in 16 but required in a 15 migration by @AndyButland in #20064
- Perform value detection at all property value levels by @kjac in #20067
- Fixes exception when converting UDIs in a PropertyValueConverter by @AaronSadlerUK in #20011
- Content Type Designer: fix style and localization by @nielslyngsoe in #20073
- Content Type Designer tabs sorting improvement by @nielslyngsoe in #20074
- Fix spell error from "Segmment" to "Segment" in the IRequestSegment interface by @rammi987 in #20010
- Dropdown: Allow empty option by @leekelleher in #20099
- QA Added acceptance tests for regression issue #17742 by @nhudinh0309 in #19996
- Converting DateTime.MinValue to sqlDateTime's minimum value by @NillasKA in #20019
- New document segments endpoint by @lauraneto in #20088
- Fixes divide by zero error on retrieving take 0 from the recycle bin root API endpoint by @AndyButland in #20096
- Move persistence of relations from repository into notification handlers by @AndyButland in #20095
- Resolve compostion properties on a block for the RTE. by @rammi987 in #20105
- Updated contributing guidelines to welcome contributions on bugfixes that aren't specifically marked as "up for grabs" by @AndyButland in #20086
- Correct the population of the parent for sibling items when retrieved under a folder by @AndyButland in #20083
- Independently manage integrated authentication and trust certificate fields on installer from database settings by @AndyButland in #20070
- Block editors: resolves clipboard UFM label by @leekelleher in #20102
- Adding validation for missing media items by @NillasKA in #20101
- Repositories: Use NPoco extensions in DatabaseCacheRepository by @idseefeld in #19955
- keepUserLoggedIn has no effect by @iOvergaard in #20123
- Fix member validation endpoints by @Zeegaan in #20116
- Tiptap RTE: Fixes undo when RTE is emptied by @leekelleher in #20133
- AppSettings: Improves the templates so they reflect the latest recommended settings by @iOvergaard in #20148
- Cherry-pick #20142 for V16 by @kjac in #20147
- Property Value Preset builder caller args by @nielslyngsoe in #20111
- Avoid throwing an exception on getting references when migrating content with changed data types (16) by @AndyButland in #20155
- Generated Partial Views: Improves the generated code slightly for a better developer experience by @iOvergaard in #20151
- #19736 adjust drag placeholder for document picker by @enkelmedia in #19737
- Improvement - Content type filters : Add Validation for allowed children and root by @AndyButland in #19903
- Member workspace: Fix for loading inside modal by @leekelleher in #20163
- Content Type Designer: Fix to prevent dragging inherited properties by @nielslyngsoe in #20136
- Mark
MemberService.GetMembersByPropertyValue()
methods as obsolete by @lauraneto in #20092 - Release Notes: Improved readability for Accessibility tag in the Update release.yml by @BerglindV in #20135
- Extension Insights: Fixes CSS alignment (fixes #20170) by @leekelleher in #20174
- Property Editors: Improve Missing Property Editor UI and allow save/publish by @lauraneto in #20104
- QA cherry picked acceptance tests with different configuration by @andr317c in #20106
- Content Variant: Preserve additional URL path in split view navigation (closes #17412) by @madsrasmussen in #20177
- Dynamic Root: Fix missing dynamicRootQueryStep types (closes #19612) by @madsrasmussen in #20183
- E2E nightly pipeline: Fix the Tiptap failing tests by @nhudinh0309 in #20194
- Badge: Make badge go on top by @nielslyngsoe in #20196
- Icons: add badge icon by @nielslyngsoe in #20201
- Content/Document Picker: make not existing items appear by @nielslyngsoe in #20198
- Management API: Add user data delete endpoint (closes #19793) by @ustadstar in #20040
- Tree: Optimize tree root total children calls by @madsrasmussen in #20192
- Docs: Updated contribution guidelines to include PR naming best practices by @BerglindV in #20180
- Link rendering: Add support for
UrlMode
parameter inHtmlLocalLinkParser
(port to 16) by @AndyButland in #20207 - Permissions: Fix removal of check on removal the final admin user (closes #19917) by @AndyButland in #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 #20209
- Shortcuts: Implement context and a few shortcuts of interest by @nielslyngsoe in #20204
- Property Editors: Fix
DecimalPropertyEditor
on non-English systems (closes #20214) by @arknu in #20215 - Member Workspace: Fixes property validation (closes #20210) by @leekelleher in #20222
- Trees: Expanding sibling endpoints to include all entities with trees by @NillasKA in #20150
- Localization: Fixes an issue where the fallback localization was not available after changing DefaultUILanguage (fixes #20216) by @iOvergaard in #20230
- Add test for sibling endpoint returning parent id even when its a folder by @Migaroez in #20118
- Block List: Fixed clipboard label for nested block items (closes #19929) by @leekelleher in #20223
- UX: Alignment of date range in log viewer (closes #20220) by @bjarnef in #20244
- UX: Make installed package details read only instead of disabled (closes #20218) by @bjarnef in #20246
- UX: Align height of image crop appended units (closes #20166) by @bjarnef in #20245
- Collection view: Wrong
Last edited
date displayed in document collection view (closes #19988) by @lauraneto in #20235 - Dropdown: Support migrated empty values (closes #20237) by @AndyButland in #20247
- View Context: rename setBrowserTitle to setTitle by @nielslyngsoe in #20248
- Upload field Property Editor: Fix resetting value to undefined when empty by @nielslyngsoe in #20134
- Mocks: Replaced
signs
forflags
by @leekelleher in #20293 - AllowEditInvariantFromNonDefault : Fix property write guard to use correct variant ID (closes #20250) in #20277
New Contributors
- @BerglindV made their first contribution in #20135
Full Changelog: release-16.2.0...release-16.3.0-rc