generic-page

Sitefinity Release Notes

Sitefinity CMS 14.0.7700 (Official Release)

September 15, 2021

Dear Sitefinity CMS customers and partners! We are excited to announce the release of Sitefinity CMS 14.0. Below, you will find the details about what is included in this release.

What's new in Sitefinity 14.0

New Sitefinity DX packaging

With the release of 14.0, we are introducing a new composable packaging of the Sitefinity platform, to provide our customers with more flexibility in selecting the right components for their intended deployments and allow them to expand Sitefinity capabilities in step with evolving needs. Sitefinity 14.0 is delivered as the base Sitefinity DX platform, with a larger number of add-ons available, and the Enterprise package bundle. Sitefinity Insight analytics is now included in the base Sitefinity DX platform package to provide a deeper view of the usage and dynamics of your Sitefinity-powered websites. The Personalize and Test and Optimize add-ons are available separately and utilize more of Sitefinity Insight's capabilities for personalization and A/B testing. 

A new approach to system integration via business events and service hooks​

To improve Sitefinity's extensibility and allow you to integrate with practically any third-party service, we introduce the Service hooks mechanism. Using service hooks, you can easily develop event-based low-code integrations with external systems. For instance, you can send a notification to a different application (CRM or marketing automation) when a form has been submitted on a site. In addition, in the Service hooks UI, you can now create custom triggers or choose between over 20 trigger events out of the box that can send data to your integrated services. Although the Service hook module replaces the Webhooks module, Webhooks remain available to everyone in advanced settings and are automatically migrated to Service hooks when you update to 14.0.

service-hooks

Additionally, with the service hooks UI, you can see the status of executed actions, successful or failed, and statistics for service hooks runs with an option to rerun the selected entry.

service-hooks-grid

Learn more...

Enhanced headless content management

With a robust set of high-performing, easily discoverable, and well-documented APIs, Sitefinity is a hybrid headless CMS that enables adopters to create personalized user experiences based on presentation-neutral content delivered across multiple channels. Gain complete control over delivering content and experiences to multiple frontend consumers with a robust set of content, presentation, and personalization APIs.

High performance

OData output cache delivers a significant performance boost.

Headless extensibility

Create custom OData endpoints to deliver presentation and experience customizations.

Personalization

Consume page metadata to deliver personalized multichannel content.

Easily discoverable and well-documented APIs

New samples and new API references. New API extension procedures.

Learn more...

New Progress NativeChat chatbot widget

Progress NativeChat is a chatbot platform to develop and deploy automated chatbots that support natural language interfaces. Chatbots interact with users by understanding natural language expressions and generate reactions and responses based on a cognitive flow definition. You can now easily integrate existing NativeChat chatbots with Sitefinity sites utilizing a configurable NativeChat widget. 

Learn more...

native-chat

Expanded SiteSync functionality for content editors

Content editors, depending on permissions, can now sync single or multiple items and pages with different states. This feature simplifies making and promoting small changes in content and allows administrators to focus on other tasks.

Learn more...

site-sync

New authentication protocol

New lightweight, simpler to configure, manage, and more extensible authentication protocol. The new "Default" authentication protocol will significantly reduce complexity (both for development and customer use), improve performance, maintainability and speed up login time. The new authentication protocol is intended to obsolete SimpleWebToken - SWT and OpenId, which rely on an internal identity provider shipped with Sitefinity.
We highly recommend people that upgrade from lower Sitefinity version to switch to the new authentication protocol "Default".

Learn more...

External app authorization

Support for OAuth2.0 authorization code, independent from any identity provider. implicit and resource owner flows are introduced with the new authentication protocol. For machine-to-machine authorization, Sitefinity access keys can be used in both OpenId protocol and Default protocol.
Learn more...

Use external authentication providers with user groups

Sitefinity 13.3 introduced the concept of user groups for separate sites in a multisite Sitefinity instance. With this release, you can use external authentication providers, such as ADFS, AzureAD, and social media authentication providers, such as Google and Facebook, to authenticate users belonging to user groups.

Learn more...

User groups management for multisite

Sitefinity 13.3 introduced the concept of user groups for separate sites in a multisite Sitefinity instance. With this release, Sitefinity provides additional management capabilities to enable administrators to assign users from one user group to another or split existing users from the Default (Global) group into specific user groups.

Learn more...

move-user-groups

SEO optimization

WebP image support

Sitefinity now supports the WebP image format for images and thumbnails. WebP is an image format employing both lossy and lossless compression and supports animation and alpha transparency. WebP  is designed to create  smaller files  for the same quality, or of higher quality for the same size, than JPEG, PNG, and GIF image formats.  With WebP images, you r pages load faster and your bandwidth costs may be lower.

Developers can use the new extensibility point for the ImageProcessor, provided through the IImageProcessorExtender interface. By implementing this interface, you can write custom logic for image processing in any format.

You can use the new dropdown Convert image format to... in the thumbnails settings dialog to generate thumbnails in the selected format. For example:

  1. You create a profile with "Convert image format to..." set to WEBP, apply this profile to a library, and upload a JPG image in this library. The thumbnail generated for this profile will be in WEBP format.
  2. You set the "Convert image format to..." dropdown to its default value "Keep original format." The thumbnail will have the same format as the parent image.

Here is the new option:

webp-support

Learn more...

Sitefinity MVC updates

Page optimizations related to the new Google ranking algorithm:

  • A new template for the Image widget, called Image Dimensions, is added, which adds Width and Height attributes to images.
  • The Image gallery widget automatically adds the Width and Height attributes to its images.
  • The Image and the Image gallery widgets automatically support lazy-loaded images by using the loading="lazy" attribute in the generated page HTML.
  • Additional MVC script and stylesheet helpers that allow adding attributes to the script and stylesheets.
  • Added container-fluid and wrapping container to Bootstrap.

Responsive images for MVC and .NET Core widgets

Sitefinity 14.0 adds a new responsive option in the Image size dropdown of the Image widget designer, which allows using different versions of the image, depending on the device viewport size.

Learn more...

New auto-generated field for MVC and .NET Core widgets

With the new All types autogenerated fields, you can display lists of all types of items in MVC and .NET Core widgets. It supports filtering, sorting, and SEO.

Learn more...

Sitefinity component framework

The Sitefinity component framework is an npm package containing reusable Angular elements, such as components, directives, services, and helpers, built following the design principles of Sitefinity and serving as building blocks for creating a user interface.

Learn more...

Enhanced digital media analytics: Measure content views and attribution for videos and video galleries hosted in Sitefinity CMS

With Sitefinity CMS and Sitefinity Insight, you can analyze the performance of your content by tracking views of content items and measuring their impact on conversions. We are introducing the ability to track videos and video galleries in addition to the already supported content items.

Learn more...

sf-insight-videos-views-and-attributions

Reinvented UI

Extension point for customization of related data fields and selectors 

A new endpoint is exposed, enabling you to modify the HTML of the related data selector. In this way, you can alter the information that is displayed and add more data. For example, for events, you can add the start and end date, in addition to the event name.

To find a sample for the extension, see the Sitefinity GitHub repo

Learn more...

customization-of-related-data


Configuring the date and time format of the date/time fields 

You can now change the date format across Sitefinity and reinvented UI based on the available cultures. Site administrators can specify the desired date and time formats in a single place to control custom fields, events module dates, publish/unpublish, and autogenerated designers in .NET Core and MVC.

Learn more...

Mobile preview redesign

The Mobile preview functionality is now available with a new interface. You can preview how your pages look on mobile devices with various resolutions.

Learn more...

pages-mobile-preview

Page templates management redesign 

Feature parity for template management - list and operations. It is now easier to filter templates with the Filter templates menu, and you can sort them directly on the page.

Learn more...


templates-redesign

.NET BETA

.NET Core Renderer [Beta] is moving from CTP to BETA, allowing you to explore new functionality.

Continuing the improvement of the .NET Core application, with this release, we added more widgets and improved the functionality of the new page editor.

Page template editing in the WYSIWYG editor.

Learn more...

.net-core-page-template

Page and widget-based personalization for the .NET Core pages

Learn more...

personalized-page-net-core

Introduction of the Navigation widget

The new Navigation widget provides ready-to-use templates for Horizontal, Vertical, Tabs, and Accordion widget views.

Learn more...

.net-nav-widget2

Introduction of the Content list widget

A new Content list widget is added that can display lists of built-in and dynamic content modules. It includes filtering, sorting, and SEO.

Learn more...

.net-core-content-list-widget

Implementation for Content block sharing

The Content of the .NET Core Content block widget can now be shared in the Content block module and used across different pages and websites.

Learn more...

.NET Core demo v2

Improved example on how to build your page with custom styling and scripting and .NET Core page builder.  Kick starter sample which will show what is available out of the box with the .NET Core renderer and its extensibility.

Added a new sample for building a "mega menu."

Learn more...

.net-core-service-demo-megamenu

What's improved

Redesign of the default authentication login screens

The default authentication login screens now have a new, modern look and feel to improve the user journey.

login-screens-redesign


Data integrity improvements
Sitefinity code now has various improvements to prevent creating custom fields, dynamic modules, taxonomies, and dynamic modules with special names reserved by the system that might cause collisions.

Improved tracking of YouTube videos

Sitefinity CMS now automatically reports visitors' interactions with YouTube videos to Sitefinity Insight. Your marketing team can then use this information to track their marketing goals and improve customer journeys.

Learn more...

Improved user login tracking

Login interactions reported to Sitefinity Insight would now include the user roles. This metadata could then be used with a contact property for creating scoring rules, touchpoint definitions, etc.

Learn more...

Better support for configuring Sitefinity Insight for Sitefinity Cloud

Sitefinity Insight admin configuration screen in Sitefinity Cloud is no longer restricted to Read-only mode, and the relevant configuration changes are stored in the Sitefinity database. Sitefinity Insight configurations are automatically updated for all nodes in the NLB setup.

Deprecated capabilities

  • Sitefinity's built-in Ecommerce module is deprecated. All Ecommerce assembly files and APIs are removed from the project source code. Progress has partnered with Ucommerce to provide a comprehensive, feature-rich replacement.  Learn more...
  • Forms and SWT authentication mechanisms are deprecated. The basic settings authentication screen has been removed for new projects and is visible only for projects that use Forms authentication.  Learn more...
  • Sitefinity implementation of GitHub authentication provider is no longer supported. GitHub announced that API authentication through query parameters id would be deprecated as of September 8, 2021.   Learn more...
  • Progress.Sitefinity.Insight.Iris.Extension package is deprecated. Sitefinity Insight-related features are now included out of the box and this package is no longer needed. You can safely remove it.

What's fixed


  • Themes: Custom theme from WebsiteTemplates doesn't get applied to a template on a site that contains only one Language (EN) in a multisite/lingual project. (437608)
  • Xliff FTP connector cannot be instantiated when optional parameters don't have values. (441046)
  • Error is thrown when navigating to users on a site that is using default and custom user groups. (441054)
  • Switching to a custom default user group is not allowing you to login with the Default user group. (441085)
  • Scheduled Tasks Management: Scheduled tasks management screen shows the dates for scheduled tasks in 12 hour format. (441198)
  • SiteSync - multiple entries for the same item breaks SiteSync. (439686)
  • SiteSync: Delete a group or redirect page in ML in both languages throws delete event only for the default language (279103)
  • Content Block: Create Link modifies inserted absolute URLs (389775)
  • Autogenerated field types: LinkModel is not persisted (435108)
  • SiteSync stuck at "Initializing" when "Retry count when there are failed items" is set to more than 0 (435538)
  • Autogenerated field types: MixedContentContext not persisted when string field isn't populated (436215)
  • Translating a page to removed culture with FTP Xliff connector changes the page name property in the default culture (437879)
  • Modified webforms widget templates are duplicated when upgrading a single site to version 13.1 or above (439079)
  • Wrong Image Content Location is getting deleted intermittently when multiple Image Widgets are used on the page (440341)
  • Translating child pages with custom URLs creates URLs for those child pages with the custom URL appended to the default URL (440613)
  • Error Pages: having domains per language results in The relative virtual path is not allowed here (440954)
  • Create user when User per site is Enabled shows a Provider dropdown that should be hidden (441058)
  • SharePoint: Title filed is ignored when sync Library to Sitefinity Dynamic module. (441126)
  • Revision history: Id cannot be an Empty Guid error is thrown when opening version of page template from resource package (441829)
  • Revision history: After switching page template to one from different resource package previous versions are displayed as blank (441830)
  • You are not able to delete Default User group from a site although you are using it in another site (442203)
  • Telerik.Sitefinity.Resources reference missing after install from NuGet when "Indexing of Contents and Properties of Files" is turned off in Windows (442239)
  • System status widget reports wrong count of failed tasks (442883)
  • FileSystemStorageProvider leaves orphaned files when deleting videos (436628)
  • Autogenerated field types: MixedContentContext not rendered in page preview (440588)
  • Sitemap: The module does not generate correct entries for ML translated content items according to best SEO practices (440955)
  • MVC: Forms: Response with more than 255 characters could be submitted via the frontend without error (442133)
  • Content Locations: CL cache is not invalidated when updating widgets (442839)
  • Broken references for AWSSDK.CloudSearch and AWSSDK.CloudSearchDomain after upgrade to 13.3 with project manager (443257)
  • Publish to Azure for 13.3 project created with project manager fails with Error MSB4057: The target "MSDeployPublish" does not exist in the project. (443310)
  • Azure WAF blocks Site Sync "Test Connection" functionality (443612)
  • Authentication with Twitter fails with certificate validation error (443638)
  • "Cannot use snapshot after headers sent. Response status code: 301" exception in the error log after requesting a page through http:// when the page RequireSSL property is set to true (443926)
  • Kendo UI Editor Table Wizard Dialog in MVC Content Blocks has incorrect size -  (300725)
  • Filter users and search for them does not work for LDAP provider (334547)
  • After upgrading the project from 12.1.7125.0 to 13.2.7523.0, Errors start appearing when sending for translation a page with da-dk culture to en-us culture (441446)
  • AuditTrail doesn't log entered username on unsuccessful log-in (443102)
  • AuditTrail - ElasticSearch: Username and password cannot be added (444237)
  • AWSSDK assemblies different versions in Project manager and NuGet (445084)
  • Personalizable MVC Navigation Widget (443712)
  • Odata filter is not working for Choice Fields (429107)
  • Contradicting exception thrown when trying to create a Library object with Sitefinity API (435728)
  • No popover appears for info icon on image selector screen in MVC Content Block and Image widgets (437877)
  • Taxonomies: Filtering by categories don't show the correct statistics for the specific dynamic content when "Load more..." is clicked (443136)
  • Duplicate provider created when using Export/Import as zip (445535)
  • Using MS Translator to translate Images breaks their URLs after upgrade (445837)
  • Updating tracking consent labels don't update the frontend (445040)
  • Analytics: Hard maintenance and performance (445508)
  • Web security headers not set for custom error pages (435294)
  • Changing document permissions with backend role which has the needed permissions fails (373542)
  • Changing document permissions with backend user who has the needed permissions fails (373545)
  • AdminApp: UI Bug in calendar on scheduled publish screen (435118)
  • Authentication: Claims to roles mapping does not work for Windows authentication (436148)
  • Clicking on redirect pages in the classic interface does not open page properties (436698)
  • MediaContent throwing error: Culture '{CultureName}' not available in Sitefinity`s defined languages. (442700)
  • Analytics: Error thrown when selecting 1st January 2021 (443119)
  • Web Services help page is not visible in read-only mode of configurations (445250)
  • "HTML included in the head tag" property not rendered in Edit or Preview mode (445340)
  • Images: Thumbnails are deleted after change of image title on Azure storage (445573)
  • Issue with Page selector lazy loading scroll (445655)
  • Multilingual: 404 in Edit when duplicating a page with a custom URL (445867)
  • Cross referenced Layout controls causing page view/edit timeout (446683)
  • Custom Output Cache Provider setting doesn't work, because ICacheClient interface is internal (446798)
  • AzureBlobStorage - Thumbnails of newly uploaded image get deleted after deleting image from recycle bin with the same name (447261)
  • Export/Import: Not all enabled modules for site appear available after upgrade (447360)
  • Improve naming convention of the sent files for translation to LionBridge (441283)
  • Regenerate Thumbnails fails after upgrade from version 6.x and moving image library to the external storage provider (340367)
  • Cannot regenerate thumbnails in Azure in project upgraded from 7.2 (356096)
  • [Dynamic Modules] When deleting a short text field and adding a long text field of the same name, the added field is a short text field. (436588)
  • Cannot access the Advanced settings in Internet Explorer and Microsoft Edge (443256)
  • Analytics Equals filter returns incomplete information for pages (445590)
  • Widget permissions are not implemented as set. (446222)
  • Webhooks: Error logging improvement on sent requests (448151)
  • Forms - Form Rules - Custom conditions are not registered (448461)
  • Multilingual: Images disappear on the frontend after an upgrade when translated with the MS Translator. (448650)
  • Single site license: Non admin user can access the site settings (448748)
  • Sharepoint connector: timezone synchronization of events not working (282516)
  • Group page with only restricted child pages returns 404 (442536)
  • RelativeRoute attribute routing not working in Multilingual when default language prefix is explicitly specified in URL (442862)
  • Duplicate script rendering (443181)
  • Forms - Form rules - First rule failed to apply on multiple rules with same action (448455)
  • Analytics: Performance degradation with big number of LDAP users (449160)
  • Users from local site user groups can edit content shared with other sites not accessible for that users (449455)
  • Pages: Cannot create child page in case of 404 (449585)
  • Users with granted permissions do not see a link to item`s details in search results. (449595)
  • SiteSync: MediaFileLinks synced incorrectly causing different problems with media items (449802)
  • MVC: Image widget "View all sizes" does not work (449854)
  • Stuck loading animation when migrating data via Migration mode (450417)
  • "No row for..." error when viewing a content item after adding an additional URL same as that of the URL of the item (443841)
  • Creating page template based on already existing one always logs the base for sync (444580)
  • AdminApp: When duplicating a dynamic content item the Meta description field is overwritten even if not empty (445518)
  • Incorrect blog posts links in search index when Default page is set for parent blog (446831)
  • Pages do not have links for edit and view on the Dashboard's recent items widgets (447036)
  • Actions in the Scheduled tasks grid do not work when "Always use UTC" for the Comments module is turned off (447115)
  • DefaultCultureKey="" prevents switching page languages in Classic UI (448439)
  • Delete library does not delete all files created on file system (352866)
  • When a script is loaded several times it should be loaded once with correct priority (443181)
  • Forms: Navigation Widget throws error (446744)
  • Azure Storage: File remains in container when Recycle Bin is disabled (447848)
  • Cannot change blog post parent when URL already exists (448581)
  • Unable to create pages with URLs equal to additional URLs of pages in recycle bin (449314)
  • SiteSync: Converting an unpublished page to a group/redirect page causes problems with SiteSync (450476)
  • RecycleBin: In classic UI when delete page the 'Undo' link button does not work when as sub application (450850)
  • Sending items for translation appear on another site in a Multisite environment. (450979)
  • Frozen startup status screen could occur when creating a new project (452424)
  • Upgrade AngularJS to 1.8.2 on the app status page (452904)
  • Page Layout Service: Sibling ID is empty for all widgets in JSON result (443842)
  • RadEditor for rich text fields has tools overlapped when additional tools are added and the content item is being accessed through dashboard. (444146)
  • Widgets with RelativeRoute actions dropped on home page are causing issues in multilingual setups (453376)
  • Delete blobs when media content is deleted (444834)
  • Unable to export dynamic subscribers of mailing lists (449966)
  • Breadcrumb widget not displaying nodes of pages with synced localization strategy and unpublished language version (452756)
  • Performance issue in OData services - LifecycleItemStrategy.ReorderItems (453810)
  • After setting permissions to a parent template, editors lose the ability to edit child templates (453920)
  • User Groups feature not working for Sitefinity Cloud licenses (453992)
  • FormsManager - RequiresLibraryCreation can break module upgrade if there is form control which controller cannot be resolved (454410)
  • Naming restrictions in Sitefinity (373700)

New content editing experience:

  • SiteSync: When a scheduled page is open on the target server the scheduled time of the page is wrong(Jan 1, 1) (329159)
  • AdminApp: config.json overridden by upgrades (437999)
  • AdminApp: Unexpected field value in localizable field (440487)
  • AdminApp: Choices field with Dropdown template default value is persisted as NULL (440937)
  • AdminApp: Unable to deselect "open in new window" in "edit link" screen (441812)
  • Item was not locked when the user unlock the item and start changing it (433063)
  • "URL to file" field as missing value in new interface after upgrading teh site from version 8.0 or below (434392)
  • Inconsistent behavior with the backend Search when special symbols are wrapping the titles (437713)
  • Toolbox in page/page template editor does scroll correctly (442478)
  • Cursor should change to hand when hovering over media already selected in custom field (443570)
  • Hierarchical content allow change of parent through action menu (332687)
  • Duplicate URL error is not descriptive enough (438833)
  • UI refreshes every minute when working with images (438871)
  • Editing group and redirect pages from language chips not working (443000)
  • Hierarchical classification count is not updated correctly (445836)
  • Pages grid twitches when scrolling slowly (443592)
  • Error is thrown when create а page with duplicate url (446150)
  • AdminApp: Taxa component does not work when you add more than 100 tags to an item (298331)
  • AdminApp: Click-on 'revert to this version' redirects to the page listing instead of opening the page (435110)
  • Default Language is still shown when filtering by non-default language (435670)
  • 'Thumbnails settings' throws error when in ReadOnly mode (440463)
  • Admin App: Incorrect markup in HTML view when inserting an image in the Content editor (444133)
  • Media Content &Libraries: 'Additional URLs to file' disappearing in new interface (446782)
  • AdminApp: Loading is waiting for providers request to be triggered when navigating between types (447018)
  • AdminApp: ContentBlock links to pages with appended url segments broken after upgrade (447045)
  • AdminApp: Using Firefox to replace a Javascript file in leads to Unknown content type error message. (439130)
  • AdminApp - Page cannot be deleted You cannot delete a page that has child pages. You should move or delete child pages first (440488)
  • AdminApp: Error thrown when paste code in the HTML view of the Editor (449887)
  • Translations module: Hyperlinks pointing to original language version after translating to another language (450172)
  • Items for dynamic module with content type named "Property" (singular) are not editable in New interface (441260)
  • AdminApp: Select All Languages checkbox is missing in the send/mark for translation dialog. (450228)
  • The selected related data item is still listed in the recent (450289)
  • AdminApp: Related document moved to parent library after edit (450613)
  • Sending a large amount of items for translation causes the server to throw a 414 error (448662)
  • Invalid file format restriction is displayed when you try to replace a file from related media field (449406)
  • Unpublishing an image sets incorrect url in preview (452921)
  • AdminApp: Missing ability to reorder how child types appear in the SF backend for module builder types (452742)
  • AdminApp: Setting Regex validation to a text field breaks it in editing mode (453073)

Sitefinity CLI:

  • Improve logic for fixing issues with assembly references after NuGet packages upgrade
  • Add logic to remove references to non-existing files in NuGet packages
  • Remove double slash from NuGet package API calls
  • Allow for other projects to be upgraded if one or more are with old Sitefinity version
  • Improve logic for generating list with packages to upgrade
  • Hint paths error checks now include .NET standard detection
  • Fix issue for detecting .NET framework version folder for the hint path
  • System assemblies references are excluded from the post-upgrade logic that fixes hint paths

Developer Tools updates:

  • TelerikUI for ASP.NET AJAX updated to 2021.2.511.45
  • TelerikUI for WPF updated to  2021.2.511.45
  • Kendo UI updated to  2021.2.511
  • HtmlSanitizer updated to 5.0.376
  • ServiceStack updated to 5.11.0
  • Microsoft.Azure.Search updated to 10.1.0
  • Newtonsoft.Json updated to 13.0.1
  • Elasticsearch.Net and NEST updated to 7.12.1
  • AWSSDK tooling updated to 3.7.0.11 and AWSSDK.S3 to 3.7.0.12
  • .NET Runtime package updates for System.Runtime.CompilerServices.Unsafe and System.Text.Encoding.CodePages to 5.0.0
  • Removed packages related to Ecommerce deprecation: PayPal, payFlowdotNet, CsvHelper

API and DB Change

API Changes

  • The complete list of API changes is available  here.

Database Changes

  • The complete list of database changes is available here.


Regards,
Progress Sitefinity Team

CTA-banner

Progress Sitefinity

Meaningful engagement, elevated experiences delivered with ease.
Set your sites on Sitefinity.