Take the community feedback survey now.

Per Bjurström
Aug 25, 2016
  5661
(9 votes)

Planned breaking changes 2016

An update to let you know what breaking changes are coming in CMS this year.

The main breaking changes are:

  1. A new state AwaitingApproval for content. We are also adding new events to IContentEvents and new save actions. Supports features around content approval.
  2. 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.
  3. Migration to UTC dates in the database will be a required step when upgrading, be ready by doing the migration today.
  4. 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.

Aug 25, 2016

Comments

valdis
valdis Aug 27, 2016 10:51 PM

Changes for better :) Good work. Are you planning to jump to 10.x?

per
per Aug 29, 2016 08:23 AM

Thanks, yes there will be a new major.

Johan Kronberg
Johan Kronberg Sep 4, 2016 04:55 PM

StartPublish changes sound great!

Please login to comment.
Latest blogs
Optimizely: Multi-Step Form Creation Through Submission

I have been exploring Optimizely Forms recently and created a multi-step Customer Support Request Form with File Upload Functionality.  Let’s get...

Madhu | Oct 25, 2025 |

How to Add Multiple Authentication Providers to an Optimizely CMS 12 Site (Entra ID, Google, Facebook, and Local Identity)

Modern websites often need to let users sign in with their corporate account (Entra ID), their social identity (Google, Facebook), or a simple...

Francisco Quintanilla | Oct 22, 2025 |

Connecting the Dots Between Research and Specification to Implementation using NotebookLM

Overview As part of my day to day role as a solution architect I overlap with many clients, partners, solutions and technologies. I am often...

Scott Reed | Oct 22, 2025

MimeKit Vulnerability and EPiServer.CMS.Core Dependency Update

Hi everyone, We want to inform you about a critical security vulnerability affecting older versions of the EPiServer.CMS.Core  package due to its...

Bien Nguyen | Oct 21, 2025

Speeding Up Local Development with a Fake OpenID Authentication Handler

When working with OpenID authentication, local development often grinds to a halt waiting for identity servers, clients, and users to be configured...

Eric Herlitz | Oct 20, 2025 |

How Optimizely MCP Learns Your CMS (and Remembers It)

In Part 1, I introduced the “discovery-first” idea—an MCP that can plug into any SaaS CMS and learn how it’s structured on its own. This post gets...

Johnny Mullaney | Oct 20, 2025 |