Closed
Description
Describe the bug
When having 8.0.100 installed, with the workloads from that time, using a rollback file, upgrading to 8.0.101 using a rollback file does not install the new workloads and keeps the 8.0.100 installed ones.
This is a behavior that is new to 8.0.x, the upgrade was working properly in 7.0.x.
To Reproduce
- Create a rollback file with the following content, named
8.0.100.json
:{ "microsoft.net.sdk.android": "34.0.43/8.0.100", "microsoft.net.sdk.ios": "17.0.8478/8.0.100", "microsoft.net.sdk.maccatalyst": "17.0.8478/8.0.100", "microsoft.net.sdk.macos": "14.0.8478/8.0.100", "microsoft.net.sdk.maui": "8.0.3/8.0.100", "microsoft.net.sdk.tvos": "17.0.8478/8.0.100" }
- Create a rollback file with the following content, named
8.0.101.json
:{ "microsoft.net.sdk.android": "34.0.52/8.0.100", "microsoft.net.sdk.ios": "17.0.8490/8.0.100", "microsoft.net.sdk.maccatalyst": "17.0.8490/8.0.100", "microsoft.net.sdk.macos": "14.0.8490/8.0.100", "microsoft.net.sdk.maui": "8.0.3/8.0.100", "microsoft.net.sdk.tvos": "17.0.8490/8.0.100" }
- Install .NET 8.0.100
- Run the workload install with
dotnet workload install --from-rollback-file 8.0.100.json android ios maccatalyst maui tvos
- Install .NET 8.0.101
- Run the workload install with
dotnet workload install --from-rollback-file 8.0.101.json android ios maccatalyst maui tvos
- Run
dotnet workload list
and notice that the installed workloads are still at 8.0.100 versions.
You can find a github actions repro here https://github.com/jeromelaban/sdk-workloads-bench (37958-sdk-workloads-bench-main.zip).
Here are some logs from the execution of the script above: 37958-sdk-upgrade-issue.txt