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.
Thanks for looking into this! We had to do a workaround for this breaking change - that did seem a bit unintended :)
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.
So if the fix is to revert to the old code, how do you handle values that contain commas?
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.
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.