docs/en/release-info/migration-guides/upgrading-startup-template.md
//[doc-seo]
{
"Description": "Learn how to upgrade your startup template in ABP Framework by comparing existing and new solutions using WinMerge for seamless updates."
}
Sometimes we introduce new features/changes that requires to make changes in the startup template. We already implement the changes in the startup template for new applications. However, in some cases you need to manually make some minor changes in your existing solution.
This guide explains a suggested way of upgrading your solution templates, using the WinMerge tool.
See also the Upgrading document for an overall progress of upgrading. This document focuses on upgrading the startup template.
We will create two solutions to compare the changes;
Assume that we are upgrading from the version 4.2.2 to version 4.3.0-rc.1. First, create two empty folders:
A) Open a command-line terminal inside the 4_2_2 folder and create a new solution with the version 4.2.2 using the ABP CLI (install it if you haven't installed before).
Example:
abp new MyCompareApp -u blazor -v 4.2.2
Important: You need to create the solution with the exact configuration of your solution. If your application has Angular UI and MongoDB, you should use the same options here.
B) Then open a command-line terminal inside the 4_3_0-rc1 folder and create a new solution with the version 4.3.0-rc.1 using the ABP CLI.
Example:
abp new MyCompareApp -u blazor -v 4.3.0-rc.1
Now, we have the same application with different versions.
If we compare two folders now, we will see unnecessary differences because of NuGet & NPM package differences. It is better to upgrade the old application to the new version before comparing them.
Open a command-line terminal inside the 4_2_2 folder and type the following command:
abp update -v 4.3.0-rc.1
This will update all NuGet & NPM packages in your solution. We are ready to compare the folders to see the differences.
We will use the WinMerge utility for the comparison. So, please install it if it wasn't installed before. After installation, open the WinMerge application, select the the File > Open menu item, select the folders you want to compare:
Now, we can click to the Compare button to see all the differences. Here, a screenshot from the comparison:
See the Comparison result column or the yellow coloring to understand if two files or folder are different. It shows almost all folders are different. However, don't worry. Generally a few files will be different in a folder and a few lines will be different in a file comparison.
For example, I select the MyCompareApp.Blazor.csproj to understand what's changed in this file:
We see that;
Blazorise.Bootstrap package is upgraded from version 0.9.3-preview6 to version 0.9.3.3.Blazorise.Icons.FontAwesome package is upgraded from version 0.9.3-preview6 to version 0.9.3.3.Volo.Abp.Identity.Blazor package is replaced by Volo.Abp.Identity.Blazor.WebAssembly.Volo.Abp.TenantManagement.Blazor package is replaced by Volo.Abp.TenantManagement.Blazor.WebAssembly.Volo.Abp.SettingManagement.Blazor.WebAssembly package is newly added.In this way, we can understand all the changes.
Comparison result clearly shows the necessary changes should be done on upgrade. All you need to do is to apply the same changes in your own solution.
It is important you first upgrade your own solution to the new version, using the
abp updatecommand. Then you can apply the manual changes