What’s New & Improved
Authentication & Security
Integration with third-party Identity Providers
Оut-of-the-box integration added with the most popular authentication types/providers:
- ADFS (over SAML or JWT)
- Windows authentication
- Basic authentication
In addition, custom integrations are easier due to a simplified API.
OpenID Connect-Based User Authentication
- Ease of deployment
- Wide support of devices
- Enabling Claims Providers to be distinct from Identity Providers
For more information you could check the official OpenID Connect site.
Login by Email
Sitefinity 10.0 supports login with email (instead of username). There is no more a need to specify both username and email when registering a user in Sitefinity. The email is sufficient making the login process more convenient as you don't have to remember specific username.
If a user has a registration with username (different than email) both username and email will work successfully for login.
Association of Sitefinity roles and external claims
IT administrators can configure a mapping between external claims (e.g. AD groups/roles) and Sitefinity roles for implementing external role management of the new web site users.
While developing a website that only a chosen group of people should be able to see, Website Managers can invite people to the secured site and monitor when they access the site and from what devices. Stakeholders are able to review the progress even without being CMS users.
This feature will be available only for Sitefinity license holders who have Multisite Management capability.
Roles and Permissions Management Improvements
Better user experience and functionality for managing permissions in Мultisite environments with several providers.
Application Status Page Improvements
In order to hide the CMS utilized by the web site from the web site visitors, Sitefinity allows administrators to configure the application status page relative URL.
Performance and Scalability
Cache Control Policy Management
Support for client cache based on standard cache control HTTP response headers such as Cache-Control max age, public etc.
- Improved overall performance for website pages by obtaining a cached responses.
- New UI screen for working the Cache control headers.
- Separate cache profiles for media items – different profiles can be configured for different media items (images, videos, documents)
System Health Check service
Developers and System Administrators can use the Sitefinity health check API endpoint to easily get the current status of a website in terms of database access, NLB communication, Internet connectivity and Redis access.
Built-In Site Warmup
IT Administrators can ensure that their sites are configured for optimal performance from the very first user visit. The Sitefinity Warmup tool gets all sitemap pages, compiles them based on sitemap priority and stores them in the output cache, so they are ready to perform at their best on the user’s first visit. It all works in the background and Developers can extend it leveraging its plugin architecture.
Diagnostics Module Improvements
Multiple improvements in profiling capabilities, while in the same time reducing potential performance impact on live environments of the profiling process. The new reports and tracking capabilities include:
- MVC Widgets Profiler - instead of page level only, profiling is going deeper to the widget level
- Added Razor templates compilation profiler
- Site re-initialization profiler - track restarts of the web site
- SQL Profiling without performance impact (statistics only)
- NLB requests tracking
- Light mode is introduced - web and database requests are tracked separately
- Data truncation for historical records
SVG Images Support
Content Marketers can easily use SVG images for better website performance and visitor experience, especially on mobile devices.
Multisite Data Tracking
Sitefinity 10 makes it possible to isolate customer journey data for individual websites powered by a single CMS instance (codebase) in separate data centers in the Digital Experience Cloud. Thus, Digital Marketers can get data-driven insights that are specific to the brand or website they manage.
MVC-Based Widgets Tracking
All MVC widgets now match the behavioral tracking capabilities of web forms
Persona Scoring Improvements
A new capability of the Persona Scoring rules allows Digital Marketers to score every visit of a particular web site section or page, rather than the first time only, which simplifies the Scoring Model definition and reduces the model maintenance costs.
Lead Scoring Improvements
A new capability of the Lead Scoring rules allows Digital Marketers to score repetitive interactions measuring an increased engagement of a particular contact.
Export and import a ZIP file
Allows for the export and import of content and structure to and from a .zip file. The .zip file can be used to import the data in another Sitefinity instance,thus providing the opportunity to use starter kits for new projects.
Add-ons can now be uninstalled by uninstalling the NuGet packages holding them. After the website initializes, Sitefinity will automatically remove all functionality, structure and content that were part of that Add-on.
Export user profiles
User Profile structure is included in the export/import functionality for deployment, add-on or .zip file, so new projects with similar user profiling can easily benefit from previous structures.
- UI for ASP.NET AJAX ( version 2017.1.118). Release notes here
- Kendo UI R3 2016 SP2( version 2016.3.11.18). Release notes here
- MaxMind latest database, Release March 2017
- Service Stack - version 4.5.6
- Azure .NET SDK version 2.9.6. Release notes here.
- Newtonsoft Json version 126.96.36.199. Release notes here.
- Elasticsearch.Net version 1.9.0. Release notes here
- NEST version 1.9.0. Release notes here
- Support for managing folders - clients of the service layer can execute CRUD operations on folders
- A set of properties for folders and libraries are now marked as non-editable due to functional limitations
- Login/Logout endpoints are now deprecated. Authentication works with Bearer tokens according to the new mechanism.
Feather Resource Packages
- To ease package resources organization and maintainance we have introduced a new convention to separate Sitefinity specific front-end resources from project specific front-end resources.
assets\src now contains two directories:
- sitefinity - contains scss files for Sitefinity styling;
- project - contains non-sitefinity front-end assets; (If this folder is renamed, the new name must be used as value for the variable projectAssetsFolder located in
grunt.js has been refactored. Introduced
jsfiles.json where to list js files which are concatenated and uglified to one file.
New Supported OS and Databases
- Windows Server 2016
- MS SQL Server 2016
Development Platform Enhancements
- Random GUIDs - the system will automatically assign random GUIDs to new items added, instead of the previously utilized sequential GUIDs
Discontinued and deprecated
- Revision History: Viewing an entry for an Event will show incorrect information (FP)
- ElasticSearch: Fields containing underscore are renamed in the TocamelCase method, making impossible to return results from them (FP)
- Scheduling creates revision history entry from System user (FP)
- Responsive design rules are always applied when editing pages in the backend (FP)
- Images: Performance degradation (FP)
- Media content items throw 404 Not Found in multilingual site (FP)
- Missing Analytics config in advanced settings (FP)
- Pages: Discard Draft option does not work on users with Author or Editor roles (FP)
- Database: Historical information of deleted items are not removed from tables sf_version_items and sf_version_chnges (FP)
- Web forms tags widget does not generate correct URLs if content widget is on different page (FP)
- Email Campaigns: Send check message does not work as expected (FP)
- Analytics: User list for permissions displays only 40 users (FP)
- Feather Taxon selector: Selecting a child category causes the designer to load incorrectly (FP)
- Responsive Design: CSS transformations null reference when invalid page ID is passed (FP)
- WebApi: Concurrency issue - item strategies are singleton
- Security: Unable to change permissions of libraries under Administration -> User files in Мultisite (FP)
- Cannot change library URL to upper case
- Add additional logging in SiteSync
- Comments have two href attributes (FP)
- Ecommerce: Product additional url removed when new one is added for alternate language (FP)
- Redirect page converted to regular page persists properties in database (FP)
- Cannot delete custom classification item in multilingual and multisite project (FP)
- Content Block: Users are able to see edit options for restricted shared content blocks after adding the widget (FP)
- Feather: Cannot set attributes values that contain spaces in forms validation attributes (FP)
- Feather: Pager is throwing exception if pages are more than 10 (FP)
- Feather: Captcha is not validated client-side form (FP)
- Feather: Classification field for a custom classification throws exception in Dynamic Content details view (FP)
- Feather: No client-side validation of custom rule in MVC Form (FP)
- Feather: Required attribute is encoded in MVC Form (FP)
- Feather: Media field confusing label when no media item selected (FP)
- MVC Forms: Changing the FieldName value will cause the form to crash in a page (FP)
- Feather Forms: Cannot submit if one form is using Ajax Submit and other form is not (FP)
- Feather: Change Password Url Action is case sensitive
- Feather: MVC Widget templates of a Dynamic module disappear after any change is made in the template (FP)
- Feather: SfPlaceHolder inside a PartialView doesn`t render (FP)
- Feather: MVC Calendar - Events won't appear on page with URL contains special characters (FP)
- Feather: After upgrade there is NullReferenceException thrown if page is open for edit of non-default culture
- Feather: Filter search results by view permissions not working (FP)
- Feather: Angular error while editing Image Widget (FP)
- Feather: MVC Form: Does not sync with Marketo when AjaxSubmit is used (FP)
- Twitter feed widget uses http:// protocol for the user avatar image when the page requires SSL (FP)
- Module builder permissions: Breaking permissions inheritance for dynamic content type for non-default provider doesn't work as expected (FP)
- Dynamic Module permissions for non-default providers: Delete permissions not working (FP)
- Pages: Restricted pages are retrieved by the service regardless the user permission to View the page (FP)
- Advanced settings: Cannot set Value of field definition element (FP)
- FormsControl: the selected form is not marked (FP)
- Content Block: Users are not able to select shared content block if one of the content block is with permission <View this content block> set to Administrators only
- Cannot edit Content blocks (both MVC and WebForms) using Inline Editing if the widget is from a template but “Editable on pages”. (FP)
- Responsive design Basic settings view broken (FP)
- Forums: Permalinks wrongly generated when different Forums widgets placed in different pages (FP)
- Publishing images in another language from the More actions menu does not translate the images properly (FP)
- Fedex shipping provider: PackagingType is not included in the XML that is send to Fedex service
- User Profile widget: Edit view shows cached data if page is Output cached (FP)
- Events: Calendars from different provider are not displayed in Events widget > Narrow selection by calendars
- Events: Unable to add event to calendar using 'iCal' in iOS and Safari (FP)
- Page URL of the imported translations is not validated (FP)
- Ecommerce: Broken links in custom LongText fields (FP)
- Unlicensed modules are with status "Failed" after the project is created (FP)
- Items with different values of long text field in default culture and in invariant culture are modified on checkout (FP)
- URLRulesClient does not work (FP)
- Unable to place widgets on page (FP)
- Analytics: Permissions user list paging returning different number of users on each page
- Fluent API for pages allows deletion of all widgets in the whole site (FP)
- Sitefinity "Cannot save file:[Row not found: GenericOID]" error when uploading large file to Amazon S3 (FP)
- Content items: It is not possible to delete an item (News, Blog post, Dynamic module, etc.) when accessing to its Edit vew from the Dashboard (FP)
- Inline editing adding style to links (FP)
- Feather: MVC forms Success/Error message cannot be customized
- Feather: Performance improvements for Dynamic modules
- Multiple MVC AJAX Forms on the same page create entry in the wrong form (FP)
- MVC Navigation overlaps the subpages after sub-level 3 (FP)
- Labels: Deleting a label from Labels and Messages page in the backend will open a 404 message (FP)
- Additional URLs with a path for child pages throw 404 (FP)
- Reordering of images in content item on Chrome escape the cursor position (FP)
- Editing Pages backend page shows a widget with Object Reference error (FP)
- Documents from the recycle bin downloaded (FP)
- Chrome: HTML field height overlap in Designer (FP)
- REST services help page is now configurable through web.config. In order to enable help page which is disabled by default you need to add the following code in endpointBehaviors section in web.config <webHttp helpEnabled="true" />
- "File not found" error when deleting media items (FP)
- Selectors: Link selector not removing sfref attribute from anchor tag (FP)
- WebServices: Choices field checkboxes throwing "Operation is not valid" error (FP)
- Form subscription does not permit emails with a top level domain of 5 characters or more (FP)
- SiteSync: Page permissions are synced although sync of permissions is disabled
- Pages: Unpublished Page in Multilingual staying in Navigation (FP)
- Forms: Fields cannot be identified by field name in form responses
- "Allow site search to index this page" requires re-index (FP)
- Kendo: Unknown DataSource transport type 'json' in the backend (FP)
- Revision history does not work after upgrade to Internal Build of 9.2 (FP)
- Module Builder Dashboard generates wrong url when "Enable non-default Site URL Settings" is activated (FP)
- SiteSync status page is blank ("The added or subtracted value results in an un-representable DateTime")
- Changing parent page URL causes some child URLs to become the same as their additional URLs
- Synchronizing a page that publishes and unpublishes at specific time is not working (FP)
- Time picker disappears when content item is a child (FP)
- RadEditor's LinkSelector does not work correctly on links inserted through the HTML editor (FP)
- When Sitefinity is sub-folder and custom error page is under https the status page do not redirect to the home page after initialization (FP)
- LibraryHttpHandler: WriteEntireResponse does not work when serving items from blob storage
- Exception is thrown when you reindex the search index with too many products and product types (FP)
- Search: Re-indexing after removing the second language throws the error "Inavlid value null for parameter item" (FP)
API and Database changes
* For manual upgrades and upgrades through nuget packages, please refer to Manually upgrade a project to Sitefinity CMS 10.0 with a NuGet pack