Quan Mai
Quan Mai  -  CMS
Mar 16, 2023
  3929
(5 votes)

Upgrade to EPiServer.CMS.Core 12.13.1 as soon as you can

Our general recommendation is to keep up to date to latest versions if you can. Outside of new features, it usually contains latest bug fixes and general performance improvement.

CMS.Core 12.13.1 contains two important/critical bug fixes - discovered and fixed by my colleague Magnus Rahl. More details can be found in the release notes

Release Notes | Optimizely Developer Community

Those bugs are especially relevant when you are indexing your content, using Find - as you would be loading a lot of content and then serializing them into JSON objects, leaving a lot of cached items in process. Those can hog memory indefenitely and the only solution would be a restart (if the instance does not restart by itself via AutoHeal). The bug fixes allow cache items to be properly trimmed, and garbage collected, so memory is freed.

Mar 16, 2023

Comments

Mark Stott
Mark Stott Mar 16, 2023 02:02 PM

Thank you for sharing. I'm going to feed that back into the PMs for our CMS 12 clients.

Johan Kronberg
Johan Kronberg Mar 17, 2023 07:48 AM

Thanks! Is there docs page on how would you install it swiftly in you Solution that is using the wrapping EPiServer.CMS composition package? When have that up to date I still need to install 12.13.1 of EPiServer.Framework and EPiServer.Core.CMS. I then get warnings and also need to install 12.13.1 of EPiServer.Hosting, EPiServer.CMS.AspNetCore, EPiServer.CMS.AspNetCore.Templating, EPiServer.CMS.AspNetCore.Routing, EPiServer.CMS.AspNetCore.Mvc, EPiServer.CMS.AspNetCore.HtmlHelpers...
Would it be smarter to just remove <PackageReference Include="EPiServer.CMS" Version="12.17.1" />?

Quan Mai
Quan Mai Mar 17, 2023 01:37 PM

The ones you listed are in "Cms core", they have direct dependency on CMS.Core and .Framework so yes you would need them to be upgraded. EPiServer.CMS is just an umbrella package for CMS UI, removing it would not affect the former.

I would recommend to upgrade all cms core packages at once. they are built that way 

Johan Kronberg
Johan Kronberg Mar 20, 2023 01:27 PM

Thanks for clarifying! Found also on Optimizely Slack that "A project that has the EPiServer.CMS package installed, only needs EPiServer.Hosting and EPiServer.CMS.AspNetCore.HtmlHelpers" so follow that is easier than following the package version warnings, it will drag all dependencies versions along.

Also, it's not always smart to be fast with keeping up to date:
https://world.optimizely.com/blogs/robert-svallin/dates/2023/3/episerver-cms-ui-12-17-0-delisted-from-nuget-feed/

Sometimes a wait and see approach can work in your favor... 😅

Quan Mai
Quan Mai Mar 20, 2023 01:30 PM

Hehe delisting happens, but in general you should keep up to date as much as possible. maybe 1-2 minor version behind if you want to be safe ;) 

Mark Stott
Mark Stott Mar 22, 2023 03:31 PM

If this helps at all, this is what my package includes look like having resolved all of the warnings:

  <ItemGroup>
    <PackageReference Include="Advanced.CMS.AdvancedReviews" Version="1.3.3" />
    <PackageReference Include="Baaijte.Optimizely.ImageSharp.Web" Version="2.1.2" />
    <PackageReference Include="EPiServer.CloudPlatform.Cms" Version="1.3.1" />
    <PackageReference Include="EPiServer.CMS" Version="12.17.1" />
    <PackageReference Include="EPiServer.CMS.AspNetCore.HtmlHelpers" Version="12.13.1" />
    <PackageReference Include="EPiServer.CMS.AspNetCore.Templating" Version="12.13.1" />
    <PackageReference Include="EPiServer.CMS.Core" Version="12.13.1" />
    <PackageReference Include="EPiServer.ContentDeliveryApi.Cms" Version="3.6.0" />
    <PackageReference Include="EPiServer.Find.Cms" Version="15.0.0" />
    <PackageReference Include="EPiServer.Forms" Version="5.5.0" />
    <PackageReference Include="EPiServer.Forms.Samples" Version="4.1.0" />
    <PackageReference Include="EPiServer.Hosting" Version="12.13.1" />
    <PackageReference Include="EPiServer.Labs.LanguageManager" Version="5.1.2" />
    <PackageReference Include="Geta.NotFoundHandler.Optimizely" Version="5.0.6" />
    <PackageReference Include="Geta.Optimizely.Categories" Version="1.0.0" />
    <PackageReference Include="Geta.Optimizely.Categories.Find" Version="1.0.0" />
    <PackageReference Include="Geta.Optimizely.ContentTypeIcons" Version="2.0.2" />
    <PackageReference Include="Geta.Optimizely.Sitemaps" Version="3.1.0" />
    <PackageReference Include="ImagePointEditor" Version="2.2.0" />
    <PackageReference Include="MediatR" Version="12.0.1" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="7.0.4" />
    <PackageReference Include="SixLabors.ImageSharp.Web.Providers.Azure" Version="2.0.2" />
    <PackageReference Include="Stott.Optimizely.RobotsHandler" Version="2.5.0" />
    <PackageReference Include="Stott.Security.Optimizely" Version="0.9.2-beta" />
    <PackageReference Include="System.Linq.Async" Version="6.0.1" />
  </ItemGroup>

I went from mostly using the umbrella package of EPiServer.CMS to including the following specific packages to ensure I was running with 12.13.1 without dependency warnings:

  • EPiServer.CMS.AspNetCore.HtmlHelpers
  • EPiServer.CMS.AspNetCore.Templating
  • EPiServer.CMS.Core
  • EPiServer.Hosting

Please login to comment.
Latest blogs
Creating an admin tool - unused assets

Let's make an admin tool to clean unused assets and see how to extend your favorite CMS with custom tools and menues! We will build a tool step by...

Daniel Ovaska | Apr 15, 2026

Running Optimizely CMS on .NET 11 Preview

Learn how to run Optimizely CMS on the .NET 11 preview with a single-line change. Explore performance gains, PGO improvements, and future-proofing...

Stuart | Apr 15, 2026 |

Your Optimizely Opal Is Probably Burning Carbon It Doesn't Need To

Four patterns Optimizely practitioners could be getting wrong with Opal agents: inference levels, oversized tool responses, missing output...

Andy Blyth | Apr 15, 2026 |

Optimizely CMS 13: A Strategic Reset for Content, AI, and Composable Marketing

Optimizely CMS 13 is not just another version upgrade—it represents a deliberate shift toward a connected, AI-enabled, and API-driven content...

Augusto Davalos | Apr 14, 2026