I am working with Sitecore platform for several years now and it’s interesting how upgrade process and recommendations for upgrade have been changed over the years.
Nowadays we are doing “lift and shift” upgrades where content is upgraded as is and code is “just” upgraded via NuGet packages. This is easing upgrade process a lot.
With the new Packages.props file in our Sitecore backend solutions (Using Visual Studio 2019), it’s even easier:

There is great series of blog posts on Sitecore upgrade by my friend Martin Miles on this topic so check it out:
- Part 1: Scope Planning
- Part 2: Upgrade Tactics
- Part 3: Content Migration
- Part 4: Upgrading the Codebase
- Part 5: Changes in Sitecore 10.x
- Part 6: Testing and Going Live
But there are still some breaking changes that make upgrade process more like a detective activity than straight task.
In this article, I will talk about some gotchas that we have stubbled upon from upgrading Sitecore 10.0 to 10.3 of our Sitecore SXA/JSS solution.
Problem #1 – SXA assemblies
Where were two breaking changes regarding Sitecore SXA that we have stumbled upon when upgrading NuGet packages:
- Sitecore.XA.Feature.SiteMetadata has been split into Foundation + Feature modules probably to follow Helix principles properly – therefore you need to reference either or both Sitecore.XA.Foundation.SiteMetadata and/or Sitecore.XA.Feature.SiteMetadata
- Sitecore.XA.Feature.Redirects has been moved to Foundation module – therefore you need to reference Sitecore.XA.Foundation.Redirects instead
Problem #2 – Database Prefetch Cache changes in Sitecore 10.1
In Sitecore 10.1, the mechanism for DataProvider has been modified. We have found out that we would need to do some changes in patch configuration accordingly.
Sandeepkumar Gupta blogged about the changes and you can find really good summary with solution in his blog post -> https://sitecorethinker.wordpress.com/2021/07/18/custom-database-cache-size-sitecore-10-1/
Problem #3 – JSS
This is a major change for frontend team. JSS SDK needs to be upgraded from version 14/15 to 21 which means (as we are using React) to also upgrade React from version 16 to 18.2. Frontend team was really happy about this change although!
