Planned breaking changes 2016
An update to let you know what breaking changes are coming in CMS this year.
The main breaking changes are:
- A new state AwaitingApproval for content. We are also adding new events to IContentEvents and new save actions. Supports features around content approval.
- IContentRepository.Save and the events around that (IContentEvents) have a few quirks and odd behaviours that we have fixed to make the API more consistent and work better with approvals.
- Migration to UTC dates in the database will be a required step when upgrading, be ready by doing the migration today.
- Reviewed all APIs to make sure we do not expose implementation classes as part of our public versioned API. We will make a separate post about this with more details.
Some of the smaller breaking changes:
- Links to unpublished content will return 404 (instead of login screen).
- Localized texts will fallback to a fallback culture in the language files before falling back to values specified in code.
- LanguageBranch class now implements IReadOnly to support read-only caching.
- No longer possible to create sites without at least one host defined.
- Properties PageData.StartPublish/StopPublish are changed to Nullable.
- StartPublish will be null until published or set explicitly (today it defaults to the created date which is misleading).
- Fixed confusing handling of empty properties (for example assigning an empty link item collection to a typed model resulted in a null value)
- IContentVersionRepository List methods have been consolidated into one
- The UI Framework EPiServer.Shell.dll will be moved from NuGet package EPiServer.Framework to EPiServer.CMS.UI.Core.
A lot more details will be provided as part of the release, including a list of all breaking changes and which APIs are being changed. Pre-release packages of the breaking change release will be made available as part of the continous release process in the coming weeks.