-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Updating VS 2019 from 16.3.x to 16.4.0 uninstall existing .NET Core SDK 3.0.100 #4015
Comments
@eriawan |
@johnbeisner |
@eriawan |
My team has hit this with every project as well, and we've had to alter every We have/had a {
"sdk": {
"version": "3.0.100"
}
} ...to which we had to add
...that's a very confusing experience (and I'm hoping a bug - but I've hit this several times in upgrades now). Half of this is because it was removed, but it wasn't totally removed and since SDK version detection works on "is the folder there?", Visual Studio breaks pretty bad here and I've gotten a lot of requests for help from devs across the company on this. Here's their experience after the upgrade to 16.4: After they close that... I was a fan of the VS installer removing all of the preview releases when this was pitched. Huge fan. I racked up many gigs on SDKs. But in practice, this has caused more pain than it removed. I ask this: Can we please only uninstall/cleanup the same minor version? Without that scope, I have to either go re-install the SDK (which really defeats the purpose here), or go change the If anyone wants to repro the user experience:
|
cc @KathleenDollard @danroth27 ^ This is a follow-up to some discussions we had about upgrade pain points the whole team has felt, documenting it here. |
More in this thread https://twitter.com/onovotny/status/1206224178921246720 IMO, the current behavior is good and desirable. The later SDK's have new features, fixes and still allow building the current and previous targets. What might be missing is a way in global.json to opt-in/out of using preview SDK's but without specifying a version number. That way, if any preview SDK is on the machine, for a particular project, it'll fallback to using the latest stable instead of latest preview, etc. |
I think it's also worth bringing up here: people came to me on how to fix this because the For example, there exists a Here are the docs: https://docs.microsoft.com/en-us/dotnet/core/tools/global-json |
I don't think the documentation to that really is enough. I am almost certain that the majority of .net developers do not know anything about global.json at all. Most .net people in my social circle still think of the solution file as the center point to migrating tooling (which has some merit, which is making this experience even worse). |
Regarding the docs, I have a PR in progress that I’m planning to finish this week: dotnet/docs#15382 It needs more examples and explanations of the behavior changes starting in 3.0. |
I'm having problems after upgrading to VS 16.4.1, and I don't have a global.json file. I have hundreds of errors in my small project, but it seems like the one that causes most of them is
I have csproj files with Edit: this is what I have installed now. The cleanup doesn't seem to be very helpful...
|
This behavior proves very problematic in practice. In the past, SDK's were left alone when updating, but at some point, SDK's were uninstalled when updating through the VS Installer. While this is trivial to fix once you know it (just download the SDK's by hand), it leads to very unwelcome surprises, like SDK-dependent solutions (through I suggest this be fixed somehow. I can imagine making it a choice in the uninstaller (just ask the user), or going back to the previous behavior by simply leaving these SDK's alone. Adding it as an option when you select "Update" would probably be the best way forward. |
Just to note that I updated VS2019 to version 16.8 and viola, all my existing SDKs gone and replaced with 5.0. |
This just happened AGAIN, please stop uninstalling sdks! I updated vs and build tools on a build machine and it broke all my builds! If you want to uninstall old SDKs, ASK FIRST |
same thing here: |
AND AGAIN Updating removed 5.0.1xx when installing 5.0.3xx, breaking all existing builds again |
Tagging @timheuer |
Visual Studio uninstalls what it installs on an update. I understand that it is causing an inconvenience, but the alternative is to have Visual Studio not clean up after itself that would also be bad. If you install via the SDK installer by downloading Visual Studio will not uninstall. We use normal Windows installer ref counting and separately ref count VS and the CLI, so after VS updates itself the ref count for the CLI remains and will block the uninstall of the earlier version. |
I have 2 different machines that has VS 2019 16.3.10 and VS 2019 16.3.7 on Windows 10 1909.
Both of them have .NET Core SDK v3.0.100 installed.
After I update to VS 2019 16.4.0, the .NET Core SDK v3.0.100 got uninstalled and .NET Core 3.1.100 is installed. I don't mind having .NET Core 3.1.100 SDK installed.
My problem is why .NET Core 3.0.100 is uninstalled on every time I update VS 2019 from v16.3.x to v16.4.0?
The text was updated successfully, but these errors were encountered: