Robert Svallin
Mar 1, 2023
visibility 3092
star star star star star
(2 votes)

EPiServer.CMS UI 12.17.0 delisted from Nuget feed

The 12.17.0 version of the UI packages have been delisted from our Nuget feed and is no longer available. We are working on providing a patch, 12.17.1 to correct an issue that affects string properties that use SelectMany attribute and a ISelectionFactory to handle the available options.

 

The root issue is that the representation of the selected values is now stored in a different way in the database and that needs to be considered a breaking change. We moved from a comma separated list in favor of a Json array. I.e. from "value1,value2,value3" to "[\"value1\",\"value2\",\"value3\"] in an effort to try and broaden the capabilities. The change only applies to properties that have been updated and saved to the database since the 12.17.0 upgrade was done on the installation.

 

An installation can be checked if it has been affected by the issue, by running a query against the database to see if the properties store a JSON array or comma separated strings. Please note that only installations using 12.17.0 and that uses properties that are using SelectMany attribute is potentially affected.

An example would be that 12.17.0 would store

["1","2","3"]

 

Instead of the previously used

1,2,3

 

  • CMS-26903
    When addressing the issue CMS-23405 a breaking change was introduced in how the values for string properties using SelectManyAttribute and ISelectionFactory are stored in the database. A change was made to serialize the selected options as JSON instead of comma separated strings.

We offer our apologies that this occured and we are sorry that this has affected our customers. For installations that are in the process of migrating to 12.17.0 we ask that you verify if you are affected. Wait for the 12.17.1 version that will arrive shortly and then verify that data is stored correctly.

This blog post will be updated as we move forward with this issue. Thank you for your patience.

Mar 01, 2023

Comments

Johan Book
Johan Book Mar 1, 2023 01:43 PM

Thanks for looking into this! We had to do a workaround for this breaking change - that did seem a bit unintended :) 

Robert Svallin
Robert Svallin Mar 1, 2023 02:47 PM

Thanks @Johan, sorry to hear that you had to adapt to this scenario. Please keep your eyes on the 12.17.1 and make sure you know which properties that have been saved in the new format. We are reverting the issue back to the old code so you will need to reset the correct selections once you start to use 12.17.1. Just a heads up.

Kai de Leeuw
Kai de Leeuw Mar 3, 2023 08:37 AM

So if the fix is to revert to the old code, how do you handle values that contain commas?

Robert Svallin
Robert Svallin Mar 3, 2023 03:17 PM

Kai, unfortunately we cant currently. We will revisit this once we have resolved the breaking change issue. Once we have published the 12.17.1 version we will look into the comma, again, and see if we can manage to solve it.

Robert Svallin
Robert Svallin Mar 6, 2023 11:20 AM

Kai, please follow the bug https://world.optimizely.com/support/Bug-list/bug/CMS-26987 in which we will try to find an alternate solution to the problem you face, without doing a breaking change.

error Please login to comment.
Latest blogs
Composition Over Inheritance: Why Your Content Contract Is Not a Base Class

Inside the structural conformance pattern in SaaS CMS — from server-side inheritance to pipeline governance. A contract in Optimizely SaaS CMS is...

Vipin Banka | Sep 19, 2026

Optimizely Opti ID Integration: Why the API Key Was Missing from the DXP Management Portal

While working on an Optimizely CMS 12 Opti ID integration recently, we ran into an issue that initially appeared to be related to SSO authenticatio...

Madhu | Sep 18, 2026 |

Extending a Contract: What You Can Override

Contracts share fields across content types — but not every field setting can be overridden. Push the same contract onto several components, and CM...

Chirag Khanna | Sep 18, 2026 |

Building a Blazor Server UI Inside the Optimizely CMS 13 Admin Shell

What I learned shipping a Blazor Server UI inside Optimizely CMS 13 — Razor components in a NuGet package, the Blazor hub next to MapContent(),...

Stanisław Szołkowski | Sep 17, 2026 |