What's Changed
🙌 Notable Changes
- V16: Removes TinyMCE (client-side) by @leekelleher in #18889
- V16: Migrate TinyMCE data type configuration to Tiptap by @Zeegaan in #18843
- V16: Updates openapi-ts client and deprecates
tryExecuteAndNotifyby @iOvergaard in #18939 - V16: Removes TinyMCE (server-side) by @Zeegaan in #18913
- Feature: Document Property Value Permission by @nielslyngsoe in #18997
- V16: Replace
legacy/fetchwith@hey-api/client-fetchby @iOvergaard in #19002
💥 Breaking Changes
- Refactor settings arrays to
ISet<T>(to ensure unique values and make them easily mutable) by @ronaldbarendse in #16058 - V16: Allow
MaxRequestLengthto be specified as a long by @iOvergaard in #18141 - Remove
UmbracoPathsetting by @ronaldbarendse in #16037 - Add
AsyncMigrationBase, update base classes and call async methods by @ronaldbarendse in #17057 - V16/feature: get context resolves in undefined if not found by @nielslyngsoe in #18611
- Move public access files to member-public-access module by @madsrasmussen in #18793
- Remove syslib003 & syslib0051 obsoleted code dependencies by @Migaroez in #18827
- V16: Removes RTE Stylesheets (client-side) by @leekelleher in #18908
- Internalize uuid package by @madsrasmussen in #18955
- V16: Adds server context to store information about paths by @iOvergaard in #18967
- Remove external base64-js module by @madsrasmussen in #18969
- Move router-slot exports to @umbraco-cms/backoffice/router by @madsrasmussen in #18962
- Content client package by @madsrasmussen in #18978
- V16: Split media handling from UmbDropzoneManager by @madsrasmussen in #19031
- Move + Rename input-collection-configuration element to input-content-type-collection-configuration by @madsrasmussen in #19041
- Service refactoring to "fully" enable segments by @kjac in #19114
- Split "Sort Children"-logic to remove "illegal" import from core to packages by @madsrasmussen in #19105
- V16: Context Api can unprovide Contexts by @nielslyngsoe in #19113
- V16: Removes all generic Created, Saved, and Deleted notifications by @iOvergaard in #19119
- Retrofit ContentEditingBaseBuilder to match new create/update models by @kjac in #19129
- Make culture specific update dates work again by @kjac in #19145
📦 Dependencies
- build(deps-dev): bump storybook from 8.5.7 to 8.6.7 by @iOvergaard in #18727
- Bump esbuild and vite in /src/Umbraco.Web.UI.Login by @dependabot in #18690
- Bump esbuild and vite in /src/Umbraco.Web.UI.Client by @dependabot in #18739
- Bump vite from 6.2.2 to 6.2.3 in /src/Umbraco.Web.UI.Login by @dependabot in #18807
- Bump vite from 6.2.2 to 6.2.3 in /src/Umbraco.Web.UI.Client by @dependabot in #18857
- V15: bump @umbraco-ui/uui from 1.12.2 to 1.13.0 by @NguyenThuyLan in #18836
- Bump vite from 6.2.3 to 6.2.4 in /src/Umbraco.Web.UI.Login by @dependabot in #18891
- Bump vite from 6.2.3 to 6.2.4 in /src/Umbraco.Web.UI.Client by @dependabot in #18921
- Bump vite from 6.2.4 to 6.2.5 in /src/Umbraco.Web.UI.Client by @dependabot in #18943
- Bump vite from 6.2.4 to 6.2.5 in /src/Umbraco.Web.UI.Login by @dependabot in #18947
- Bump koa from 2.15.3 to 2.16.1 in /src/Umbraco.Web.UI.Client by @dependabot in #18987
- Bump vite from 6.2.5 to 6.2.6 in /src/Umbraco.Web.UI.Login by @dependabot in #19016
- Bump vite from 6.2.5 to 6.2.6 in /src/Umbraco.Web.UI.Client by @dependabot in #19022
- Updated server-side dependencies to latest versions for Umbraco 16 by @AndyButland in #19117
- V16: Bumps core dependencies openapi-ts and uuid to latest by @iOvergaard in #19127
🌈 A11Y
- Makes a few labels friendlier for screen readers by @AndyButland in #18500
- Remove the hardcoded color for the text in error message by @MrHutmat in #18463
- Fix issue text overflow when user name is too long by @NguyenThuyLan in #18587
🚀 New Features
- Tiptap RTE: Text color/background-color toolbar items by @leekelleher in #18482
- Tiptap RTE: Reusable toolbar menu component by @leekelleher in #18483
- Tiptap RTE: Stylesheets by @leekelleher in #18502
- V15: Allows certain adjustments of the logo by @iOvergaard in #18499
- V15: Adds migration of data type configuration when changing property editor UI by @iOvergaard in #18534
- Support root/area allowed types when pasting in Block Grid by @madsrasmussen in #18480
- Tiptap RTE: Character Map modal + toolbar item by @leekelleher in #18577
- Tiptap RTE: Anchor extension + toolbar item by @leekelleher in #18575
- V15: Enable umbraco-extension client to auto-build by @iOvergaard in #18597
- Allow multiple URL segments per document by @AndyButland in #18603
- Tiptap RTE: Text Indent extension + toolbar items by @leekelleher in #18672
- Tiptap RTE: Table column/row bubble menu by @leekelleher in #18708
- Tiptap RTE: Table Properties toolbar menu + modal by @leekelleher in #18751
- Feature: validation variant filtering + up-front validation path translation by @nielslyngsoe in #18561
- Add variancy information to reference response model by @Migaroez in #18645
- V15: New dropzone component available for the Backoffice by @iOvergaard in #18753
- Feature: Tree expansion state by @madsrasmussen in #18227
- Tiptap RTE: Statusbar extension type by @leekelleher in #18789
- V15: umb-dropzone extends umb-input-dropzone by @iOvergaard in #18784
- V15: Improve the dropzone for Image Cropper by @iOvergaard in #18838
- V15: Improve the dropzone for Upload Field by @iOvergaard in #18840
- V15: Dropzone single mode should only allow one file at a time by @iOvergaard in #18847
- Render Property "vary by segment"-toggle by @madsrasmussen in #18813
- V15: Upload Field should use a better file preview by @iOvergaard in #18899
- Tiptap RTE: Style Menu extension kind by @leekelleher in #18918
- V16: Vite development optimizations by @iOvergaard in #18915
- V16: Stylesheet Create Options by @leekelleher in #18911
- Enable unsaved changes warning for modals by @nielslyngsoe in #18927
- Feature: enable get unpersisted changes (fix #18230) by @nielslyngsoe in #18929
- Data type References UI: Workspace + Delete by @madsrasmussen in #18914
- Feature: discard changes for block workspace by @nielslyngsoe in #18930
- V16: API error interceptor should return early if it will not execute by @iOvergaard in #18963
- Feature: Use uui invalid color by @nielslyngsoe in #18273
- Adds trashed/draft state to document search result items by @leekelleher in #19057
- Adds
searchResultItemelement for Document Type items by @leekelleher in #19059 - Content Picker Search: Option to exclude trashed items by @leekelleher in #19064
- Dynamic Root: Refactored to use
UmbAncestorsEntityContextby @leekelleher in #19032 - Adds search to Document Type picker by @leekelleher in #19062
- Adds
searchResultItemelement for Media items by @leekelleher in #19058 - Improves
umb-localizerendering performance by @leekelleher in #19075 - V16: Adds texts for unpublish & publish with descendants by @iOvergaard in #19118
- Remove success notification after document type export by @madsrasmussen in #19151
- Remove success notification after file rename by @madsrasmussen in #19149
🐛 Bug Fixes
- V13: Clear Member Username Cache in Load Balanced Environments by @nikolajlauridsen in #19191
- Allow deselection of colour picker property by @AndyButland in #19174
- v16: Start removing scope references by @Zeegaan in #18074
- Fixes the Fatal icon text so it's readable in Dark Mode. by @readingdancer in #18375
- Disable webhook firing if disable in configuration (13) by @AndyButland in #18383
- Adds warning to publish descendants dialog when force re-publish is selected (13) by @AndyButland in #18409
- Backport
ShowUnroutableContentWarningsto V13 by @kjac in #18479 - V15 QA Fixing the failing acceptance tests in the nightly build by @nhudinh0309 in #18466
- Data Type: Add mandatory attribute for the property editor field by @madsrasmussen in #18488
- Document collection: align status tag colors by @madsrasmussen in #18487
- Remove Tip tap placeholder text by @madsrasmussen in #18486
- Remove
await Task.FromResult()and unnecessary async modifiers by @ronaldbarendse in #16535 - V15 QA Publish E2E test results in the Azure pipeline by @nhudinh0309 in #18498
- Localize the email property editor validation and add tests by @AndyButland in #18461
- Added obsoletion messages for unused interface and implementation for cache rebuilds by @AndyButland in #18524
- Added tests and localization to radio button validation by @AndyButland in #18512
- Changed so the the logviewer's date input is using the umb-input-date… by @MrHutmat in #18494
- Fixed grammar of unauthorized message by @AndyButland in #18553
- Set additionalOptions on the rollback entity action by @madsrasmussen in #18489
- Guard against element type mismatch at document type creation by @kjac in #18529
- Added option for filtering the content types allowed as children based on the parent node by @AndyButland in #18380
- Fixes multiple available constructors exception for execute template query constructor by @AndyButland in #18552
- V15: Workspace buttons cannot be overwritten in all cases by @iOvergaard in #18525
- V15 QA Fixing the failing acceptance tests 03032025 by @nhudinh0309 in #18549
- Feature: Content Type Workspace Editor Header Element by @madsrasmussen in #18520
- Correct handling of step values of zero by @AndyButland in #18532
- Remove version from models builder generated code header when configured to do so by @AndyButland in #18501
- Avoids collection was modified issue when flowing identities to the authenticated user's principal by @AndyButland in #18527
- Server side validation for property editors (colour picker) by @AndyButland in #18557
- Align folder entity action labels by @madsrasmussen in #18485
- Handle create and update validation for media picker by @AndyButland in #18537
- Fix issue with server validation from dictionary configuration where floating point values can be be accessed as doubles or ints by @AndyButland in #18508
- Adds unit tests for RequiredValidator by @AndyButland in #18471
- Feature: Has Children Condition by @madsrasmussen in #18161
- V15: Add MNTP serverside validation by @nikolajlauridsen in #18526
- Provide custom required validator for block list and toggle by @AndyButland in #18474
- Handle multiline statements in migrations by @AndyButland in #18478
- V15: Resolves "Save and Preview" backoffice refresh by @leekelleher in #18568
- Added uui-box around ungrouped properties during block editing by @enkelmedia in #18572
- Server side validation for property editors (drop-down and checkbox list) by @AndyButland in #18564
- Extension Registry JSDocs update by @nielslyngsoe in #18586
- [V15] Align reserved property endpoints code and usage by @kjac in #18319
- Move database cache rebuild to a background task with polling by @AndyButland in #18496
- Server side validation for property editors (multiple text strings and block list) by @AndyButland in #18581
- Added server side validation for the Multi Url Picker. by @andersreus in #18589
- Tiptap RTE: Block extension enabled/disabled checkbox state by @leekelleher in #18569
- Added missing translations for dictionary import by @AndyButland in #18551
- V15: Add textbox and text area serverside validation by @nikolajlauridsen in #18596
- V15 QA added test for issue 18555 by @andersreus in #18601
- V13: bumped imagesharp to prevent CVE-2025-27598 by @RolandKock in #18602
- Removed obsolete integration test by @AndyButland in #18604
- Added description to block list properties hide content editor by @OskarKruger in #18619
- Fixed typo in TinyMCE's da.js by @abjerner in #18628
- V15 QA Fixed the failing acceptance tests due to UI changes by @nhudinh0309 in #18617
- Adds client-side validation to Dropdown property editor by @leekelleher in #18632
- Adds client-side validation to Radio Button List property editor by @leekelleher in #18629
- Add NuGet badge by @PhyxionNL in #18583
- Use change event instead of property value change by @nielslyngsoe in #18631
- Updates sort property and direction together to avoid intermittent failures by @AndyButland in #18590
- Fix bug RTE code editor modal - pretty print not working by @NguyenThuyLan in #18633
- Prevents attempt to move an item to itself as a parent by @AndyButland in #18550
- Chore: deprecate UmbPropertyValueChangeEvent for v.16 by @nielslyngsoe in #18455
- Adds client-side validation to Checkbox List property editor by @leekelleher in #18636
- V15: Reduce the size of the package json schema by @iOvergaard in #18643
- V15: Support legacy allowPackageTelemetry option by @iOvergaard in #18644
- Corrects obsoletion message on ITwoFactorLoginService. by @AndyButland in #18623
- Reverts UI updates from publish with descendants dialog (15) by @AndyButland in #18646
- Reverts UI updates from publish with descendants dialog (13) by @AndyButland in #18647
- V15 QA reduced amount of browser downloaded on pipeline to reduce download time by @andr317c in #18642
- V15 QA added block grid with areas tests by @andr317c in #18641
- correct labels by @nielslyngsoe in #18650
- V15 QA Added acceptance tests for trash reference by by @nhudinh0309 in #18627
- Center align search icon by @nielslyngsoe in #18657
- v15: clean up unnecesary config options by @nielslyngsoe in #18648
- Fix issue text overflow when user name is too long by @NguyenThuyLan in #18653
- Content Picker: Filter out invalid entity types by @leekelleher in #18660
- Updates dependency on Examine to 3.7 by @AndyButland in #18676
- Fixes link for access to composition from document type property outside of group. by @AndyButland in #18686
- Restrict valid API user client IDs to 100 characters by @AndyButland in #18688
- V15 QA added acceptance tests for block grid variants by @andr317c in #18658
- Removes one of the two duplicate ContentPublishingNotification publishings by @AndyButland in #18702
- Added clarifying comments to the logic for granular permissions by @AndyButland in #18705
- V15 QA added Tip Tap block variant acceptance tests by @andr317c in #18668
- V15 QA added acceptance tests for block list variants by @andr317c in #18654
- V15: Extend search endpoints by @Zeegaan in #18634
- Used documented settings for the media seed cache by @AndyButland in #18723
- Adds detail of how many characters you are over when validating text fields for length by @AndyButland in #18722
- V15: Adds accepted image types for image cropper by @iOvergaard in #18715
- Fix focal point drag not working on firefox by @NguyenThuyLan in #18674
- Bugfix: Document granular user permission preset by @madsrasmussen in #18651
- V15: Change drag and drop icon by @madsrasmussen in #18519
- Bugfix: block culture permissions by @madsrasmussen in #18665
- Feature: Language Item Ref by @madsrasmussen in #18521
- Remove the showOpenButton configuration by @madsrasmussen in #18592
- Updates dashboard to use uui-box headline property/attribute & place by @warrenbuckley in #18736
- Content & Settings dashboard button look by @nielslyngsoe in #18678
- V15 QA updated nightly pipeline tests by @andr317c in #18746
- Align card sizes by @nielslyngsoe in #18760
- image cropper width height right side by @nielslyngsoe in #18759
- style adjustments for Icon Picker, make it look like another input by @nielslyngsoe in #18757
- Uses correct preview cookie same site and secure settings to allow preview mode to flow between links in the preview frame by @AndyButland in #18640
- Remove the non-controversial, straightforward obsoleted constructs for Umbraco 16 by @AndyButland in #18661
- V16: Removed deprecated client-side code by @leekelleher in #18662
- Only validate for duplicate member email address when configured to do so by @AndyButland in #18747
- Move registration of delivery API component to infrastructure to resolve issue resolve it from controller by @AndyButland in #18777
- UX: Make discard changes button red by @nielslyngsoe in #18767
- 16 QA Updated nightly test pipeline so we run it against v16 by @andr317c in #18785
- Dictionary cleanup: Remove duplicate keys for discard changes by @madsrasmussen in #18787
- Only validate invariant properties when strictly necessary by @kjac in #18729
- Feature: validation synchronization as opt in by @nielslyngsoe in #18798
- Adjusting some of the colors for the dark theme. by @MrHutmat in #18792
- Changes for the debug tag that makes it look better in dark mode by @MrHutmat in #18791
- Fixed issue where siblings of type at route are omitted from the result by @AndyButland in #18796
- Fix: data type picker flow by @nielslyngsoe in #18811
- Feature: property type workspace validation context by @nielslyngsoe in #18808
- Obsolete a few unused things. by @kjac in #18814
- V15 QA Added acceptance tests for user group default configuration by @nhudinh0309 in #18800
- Clean up leftover block item data when changing element variance by @kjac in #18804
- Reduce CPU time when initiating RepositoryCacheKeys by @Henr1k80 in #18267
- Fix bug uploading an image via the Media Picker is no longer automatically selected by @NguyenThuyLan in #18667
- Avoid a hash key generation and lookup when inserting in the LockingMechanism by @Henr1k80 in #18243
- chore: lint corrections by @nielslyngsoe in #18833
- V15 Added acceptance tests for data type default configuration by @nhudinh0309 in #18740
- Populate parent key on move and copy notifications by @AndyButland in #18837
- Fixes Dropdown property-editor validation by @leekelleher in #18845
- Adds MemberTwoFactorLoginService by @AndyButland in #18810
- Fixes null reference exception triggered when configuring to hide disabled users in the backoffice by @AndyButland in #18823
- Member relation tracking by @AndyButland in #18852
- Use uui-dialog-layout for all save + publishing dialogs by @madsrasmussen in #18871
- Fix select all checkbox in scheduled publishing by @NguyenThuyLan in #18873
- Unpublish Document: Align UX of referenced items with trash and delete by @madsrasmussen in #18860
- Fix: make the deprecation discoverable from TypeScript by @nielslyngsoe in #18856
- Implement context base for a few last contexts by @nielslyngsoe in #18865
- Feature: make route setup method part of resolve component by @nielslyngsoe in #18831
- V15: Removes flaky localization tests by @iOvergaard in #18876
- Feature: context consumer auto destroys if no callback + getContext options by @nielslyngsoe in #18835
- V15 QA Added acceptance tests for inline editing mode by @nhudinh0309 in #18874
- Todo cleanup of abstract service being aware of implementation types by @Migaroez in #18832
- Revert rather than prevent updates to sensitive properties on members without sensitive data access by @AndyButland in #18794
- Bugfix: #18473 by @nielslyngsoe in #18765
- Fix: #18707 by @nielslyngsoe in #18859
- Ensures date comparisons in schedule integration tests are made only on the datetime part to the second by @AndyButland in #18894
- Adds allow-same-origin to preview IFRAME by @AndyButland in #18895
- Adds webp to mime type map to support preview on upload file property by @AndyButland in #18863
- Updates telemetry dashboard UI by @warrenbuckley in #18743
- Use StringComparison.Ordinal in hot paths by @enkelmedia in #18893
- Add in a VSCode .code-workspace file by @warrenbuckley in #18741
- Check for NRT directory when populating LuceneIndexFolder for Examine Dashboard by @Jeavon in #18511
- V15: File upload should use better Image & SVG preview by @iOvergaard in #18900
- V15: Block package should not import from itself by @iOvergaard in #18902
- Only prevent the unpublish or delete of a related item when configured to do so if it is related as a child, not as a parent by @AndyButland in #18886
- Feature: highlight invariant doc with variant blocks is unsupported by @nielslyngsoe in #18806
- Fix pagination for users restricted by start nodes by @kjac in #18907
- Fix issue preventing blueprint derived values from being scaffolded by @AndyButland in #18917
- Remove admin permission on user configuration, allowing users with user section access only to manage users and groups by @AndyButland in #18848
- Ensure has children reflects only items with folder children when folders only are queried. by @AndyButland in #18790
- Only apply validation on content update to variant cultures where the editor has permission for the culture by @AndyButland in #18778
- Adds ancestor identifiers on document tree and collection responses by @AndyButland in #18909
- Move publish with descendants to a background task with polling by @AndyButland in #18497
- Clear roots before rebuilding navigation dictionary by @AndyButland in #18766
- Fixes save of empty, invariant block list on variant content by @AndyButland in #18932
- Added management API endpoint, service and repository for retrieval of references from the recycle bin by @AndyButland in #18882
- Updated management API endpoint and model for data type references to align with that used for documents, media etc. by @AndyButland in #18905
- Look-up redirect in content finder for multi-lingual sites using path and legacy route prefixed with the integer ID of the node with domains defined by @AndyButland in #18763
- Add raw value validation to multiple text strings property editor by @kjac in #18936
- Integration tests for content publishing with ancestor unpublished by @AndyButland in #18941
- V15/fix/18595 by @Welander1994 in #18925
- Avoid unneeded Dictionary operations by @Henr1k80 in #18890
- Avoid some heap allocations by @Henr1k80 in #18888
- Remove unneeded double seek by @Henr1k80 in #18896
- Avoid allocating new empty arrays, reuse existing empty array by @Henr1k80 in #18884
- Avoid allocating strings for parsing comma separated int values by @Henr1k80 in #18199
- fix 18367 by @nielslyngsoe in #18956
- V15 QA Fixing the failing media acceptance tests by @nhudinh0309 in #18881
- V15 QA added clipboard test for not being able to copy to root when block is not allowed at root by @andr317c in #18937
- V16: Remove circular dependency for icon-picker-modal by @iOvergaard in #18966
umb-localizeencode HTML arguments by @leekelleher in #18960- Amend root content routing and ensure trailing slashes as configured by @kjac in #18958
- Allow save of empty translations for dictionary items by @AndyButland in #18980
- V15: User password resetting notification by @Zeegaan in #18679
- Merge branch 'v15/dev' into v16/dev by @kjac in #18971
- Fixes label of enable/prevent clean up button after update by @AndyButland in #18946
- Aggregate document permissions for current user in API response by @AndyButland in #18721
- Document permission inheritance in UI by @madsrasmussen in #18935
- Display content type names on dynamic node query steps by @AndyButland in #18742
- Make it possible to disable Examine indexes by composition by @kjac in #18988
- Merge from 15 by @AndyButland in #18993
- hotfix: Make sure only to prepend relative URLs by @nielslyngsoe in #18998
- V15 Added acceptance tests for the mandatory property editor in a content or a block by @nhudinh0309 in #18920
- Ensure dates read from the database are treated as local when constructing entities by @AndyButland in #18989
- Fix: append to frozen object fix for RTE Base by @nielslyngsoe in #19003
- V15 Updated acceptance tests for unsupported invariant content item with variant blocks by @nhudinh0309 in #18919
- Ensure dates read from the database are treated as local when constructing entities (2) by @AndyButland in #19013
- Use GetIdsFromPathReversed to avoid allocating the string values of the integers parsed by @Henr1k80 in #18972
- Use maximum available value for JSON serialization depth by @AndyButland in #19001
- Treat content schedule dates as UTC by @kjac in #19028
- Make sure not to early return when verifying ancestor path is published without completing scope by @AndyButland in #19029
- CONTRIBUTING.md - fix incorrect link to contributing-first-issue.md by @andrewlacey in #19038
- Adds some missing mime types to ensure uploaded audio and video displays with preview by @AndyButland in #19039
- Clarified "too many" entries validation message. by @AndyButland in #19040
- Content search abstractions to facilitate new search in the backoffice by @kjac in #19046
- Make the entity search service async by @kjac in #19048
- V16: Chore: Corrects
UmbLocalizationControllerusage in comments/docs by @leekelleher in #19052 - V16: Chore: Deprecate
getManifest()methods by @leekelleher in #19056 - Scaffold content for content templates serverside by @kjac in #19054
- Removes tree actions from tree selection in duplicate document dialog by @AndyButland in #19053
- Update community forum links by @leekelleher in #19065
- Transparent Focal Point by @nielslyngsoe in #19047
- Improve limited language variant block deletion by @Migaroez in #18802
- Tiptap RTE: Corrects invalidation border by @nielslyngsoe in #19090
- Remove fake null checks as they are no longer needed after merge into… by @Migaroez in #19109
- Segment support for the Delivery API by @kjac in #19082
- Update version of MiniProfiler.AspNetCore.Mvc to align with MiniProfiler.Shared by @AndyButland in #19107
- declare type and constant for UMB_WORKSPACE_CONTENT_TYPE_ALIAS_CONDITION_ALIAS by @nielslyngsoe in #19091
- implement readonly mode for umb-property-editor-ui-document-type-picker by @nielslyngsoe in #19089
- V16: Implement cache tags by @Zeegaan in #19101
- Custom serialization for ValidationProblemDetails to allign paths in custom and mvc error messages by @Migaroez in #19111
- Feature: Segments by @madsrasmussen in #19060
- V16: Import
umb-app-logoelement by @leekelleher in #19103 - Allow for configuration of log file names by @AndyButland in #19074
- Custom validator example by @nielslyngsoe in #19093
- Removed population of Urls on document response model and obsoleted property by @AndyButland in #19030
- Add async methods to
IFileTypeby @ronaldbarendse in #19116 - Content Type inheritance by @nielslyngsoe in #19034
- Reject structure manager when failed to load by @nielslyngsoe in #19092
- Added integration tests for publishing service with invalid content by @AndyButland in #19095
- Fix UI creation and updating of Document Blueprints by @madsrasmussen in #19123
- Image Cropper + Tags style adjustments by @nielslyngsoe in #19122
- upgrade client dependencies by @nielslyngsoe in #19121
- Ensure the default segment is always included in API responses by @kjac in #19126
- V15: Ensure elements cache is cleared on subscribers in load balanced scenarios by @nikolajlauridsen in #19128
- Fixed error with reflection on integration test configure builder attributes, so integration tests can be created outside of the Umbraco integration test project by @AndyButland in #19077
- Avoid hybrid cache usage when traversing unpublished ancestors in a published context (non preview) by @Migaroez in #19137
- Removed population of Urls on media response model and obsoleted property by @AndyButland in #19130
- make repositories remember their stores by @nielslyngsoe in #19148
- Prevent Culture and Hostnames modal close on error by @madsrasmussen in #19133
- Include "Accept-Segment" in the "vary" response header by @kjac in #19167
- Remove sort children success notification from repository by @madsrasmussen in #19166
- Fix so a Preset Value can be falsy by @nielslyngsoe in #19173
- Output the correct error status code from the Management API by @kjac in #19175
- V16: Show modal when publishing invariant content by @iOvergaard in #19159
- Remove workspace split view entity actions for new content by @madsrasmussen in #19163
- Add segments support for Publish entity action by @madsrasmussen in #19178
- Webhook log authorization and file system path checks by @AndyButland in #19177
- V16: XHR requests do not report the underlying problem details object by @iOvergaard in #19160
- Add copy to clipboard success notification by @madsrasmussen in #19179
- Output culture variant update dates from the Delivery API by @kjac in #19180
- Open entity actions menu as pop up instead of modal by @madsrasmussen in #19185
- fix: The server path is not appended to stylesheets before load in Backoffice by @iOvergaard in #19192
New Contributors
- @RolandKock made their first contribution in #18602
- @andrewlacey made their first contribution in #19038
Full Changelog: release-15.3.1...release-16.0.0-rc