-
Notifications
You must be signed in to change notification settings - Fork 6k
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
Reorganize version articles #6453
Changes from 15 commits
2ea44cf
bda6bae
962ed86
56f9936
402f716
598c421
9fac058
7ed62e7
e49242b
4cd46c2
cf48068
f559e35
fadb4ce
6b44203
ebb824a
fb86771
5fbfc14
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,188 @@ | ||
--- | ||
title: How to remove .NET runtime and SDK | ||
description: Instructions for removing the .NET Core Runtime and SDK components on Windows, Mac, and Linux | ||
ms.date: 07/28/2018 | ||
author: billwagner | ||
ms.author: wiwagn | ||
--- | ||
# How to remove the .NET Core Runtime and SDK | ||
|
||
Over time, as you install updated versions of the .NET Core runtime and SDK, you may want to remove outdated versions of .NET Core. Removing older versions of the runtime may change the runtime chosen to run shared framework applications, as detailed in the article on [.NET Core version selection](selection.md). | ||
|
||
The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows, macOS, or Linux: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Should you mention that started with 2.1 SDK? |
||
|
||
# [Windows](#tab/Windows) | ||
|
||
```console | ||
C:\> dotnet --list-sdks | ||
2.1.200-preview-007474 [C:\Program Files\dotnet\sdk] | ||
2.1.200-preview-007480 [C:\Program Files\dotnet\sdk] | ||
2.1.200-preview-007509 [C:\Program Files\dotnet\sdk] | ||
2.1.200-preview-007570 [C:\Program Files\dotnet\sdk] | ||
2.1.200-preview-007576 [C:\Program Files\dotnet\sdk] | ||
2.1.200-preview-007587 [C:\Program Files\dotnet\sdk] | ||
2.1.200-preview-007589 [C:\Program Files\dotnet\sdk] | ||
2.1.200 [C:\Program Files\dotnet\sdk] | ||
2.1.201 [C:\Program Files\dotnet\sdk] | ||
2.1.202 [C:\Program Files\dotnet\sdk] | ||
2.1.300-preview2-008533 [C:\Program Files\dotnet\sdk] | ||
2.1.300 [C:\Program Files\dotnet\sdk] | ||
2.1.400-preview-009063 [C:\Program Files\dotnet\sdk] | ||
2.1.400-preview-009088 [C:\Program Files\dotnet\sdk] | ||
2.1.400-preview-009171 [C:\Program Files\dotnet\sdk] | ||
|
||
C:\> dotnet --list-runtimes | ||
Microsoft.AspNetCore.All 2.1.0-preview2-final [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] | ||
Microsoft.AspNetCore.All 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] | ||
Microsoft.AspNetCore.All 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] | ||
Microsoft.AspNetCore.All 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] | ||
Microsoft.AspNetCore.App 2.1.0-preview2-final [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] | ||
Microsoft.AspNetCore.App 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] | ||
Microsoft.AspNetCore.App 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] | ||
Microsoft.AspNetCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] | ||
Microsoft.NETCore.App 2.0.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.1.0-preview2-26406-04 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] | ||
``` | ||
|
||
# [Linux](#tab/Linux) | ||
|
||
```console | ||
$ dotnet --list-sdks | ||
1.0.1 [/usr/share/dotnet/sdk] | ||
1.0.4 [/usr/share/dotnet/sdk] | ||
2.0.0-preview1-005977 [/usr/share/dotnet/sdk] | ||
2.0.0-preview2-006497 [/usr/share/dotnet/sdk] | ||
2.0.0 [/usr/share/dotnet/sdk] | ||
2.1.4 [/usr/share/dotnet/sdk] | ||
2.1.300-preview2-008530 [/usr/share/dotnet/sdk] | ||
2.1.300 [/usr/share/dotnet/sdk] | ||
2.1.301 [/usr/share/dotnet/sdk] | ||
|
||
$ dotnet --list-runtimes | ||
Microsoft.AspNetCore.All 2.1.0-preview2-final [/usr/share/dotnet/shared/Microsoft.AspNetCore.All] | ||
Microsoft.AspNetCore.All 2.1.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All] | ||
Microsoft.AspNetCore.All 2.1.1 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All] | ||
Microsoft.AspNetCore.App 2.1.0-preview2-final [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] | ||
Microsoft.AspNetCore.App 2.1.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] | ||
Microsoft.AspNetCore.App 2.1.1 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] | ||
Microsoft.NETCore.App 1.0.4 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 1.0.5 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 1.1.1 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 1.1.2 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.0.0-preview1-002111-00 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.0.0-preview2-25407-01 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.0.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.0.5 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.1.0-preview2-26406-04 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.1.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.1.1 [/usr/share/dotnet/shared/Microsoft.NETCore.App] | ||
``` | ||
|
||
# [macOS](#tab/macOS) | ||
|
||
```console | ||
$ dotnet --list-sdks | ||
1.0.1 [/usr/local/share/dotnet/sdk] | ||
1.0.4 [/usr/local/share/dotnet/sdk] | ||
2.0.0-preview1-005977 [/usr/local/share/dotnet/sdk] | ||
2.0.0-preview2-006497 [/usr/local/share/dotnet/sdk] | ||
2.0.0 [/usr/local/share/dotnet/sdk] | ||
2.1.4 [/usr/local/share/dotnet/sdk] | ||
2.1.300-preview2-008530 [/usr/local/share/dotnet/sdk] | ||
2.1.300 [/usr/local/share/dotnet/sdk] | ||
2.1.301 [/usr/local/share/dotnet/sdk] | ||
|
||
$ dotnet --list-runtimes | ||
Microsoft.AspNetCore.All 2.1.0-preview2-final [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] | ||
Microsoft.AspNetCore.All 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] | ||
Microsoft.AspNetCore.All 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] | ||
Microsoft.AspNetCore.App 2.1.0-preview2-final [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] | ||
Microsoft.AspNetCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] | ||
Microsoft.AspNetCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] | ||
Microsoft.NETCore.App 1.0.4 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 1.0.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 1.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 1.1.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.0.0-preview1-002111-00 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.0.0-preview2-25407-01 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.0.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.1.0-preview2-26406-04 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
Microsoft.NETCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] | ||
``` | ||
|
||
*** | ||
|
||
## Uninstalling .NET Core | ||
|
||
# [Windows](#tab/Windows) | ||
|
||
.NET Core uses the Windows **Add/Remove Programs** dialog to remove versions of the .NET Core runtime and SDK. The following figure shows the **Add/Remove Programs** dialog with several versions of the .NET runtime and SDK installed. | ||
|
||
 | ||
|
||
Select any versions you want to remove from your machine and click **Uninstall**. | ||
|
||
# [Linux](#tab/Linux) | ||
|
||
There are more options to uninstall .NET Core (either SDK or runtime) on Linux. The best way for you to uninstall .NET Core is to mirror the action you used to install .NET Core. The specifics depend on your chosen distribution and the installation method. | ||
|
||
> [!IMPORTANT] | ||
> For Red Hat installations, consult the [Red Hat Getting Started Guide](https://access.redhat.com/documentation/en-us/net_core/2.0/html/getting_started_guide/gs_install_dotnet#install_register_rehel) for information on installing and uninstalling .NET Core. | ||
|
||
Starting with .NET Core 2.1, there is no need to uninstall the .NET Core SDK when upgrading it using a package manager. The package manager `update` or `refresh` commands will automatically remove the older version upon the successful installation of a newer version. | ||
|
||
If you installed .NET Core using a package manager, you use that same package manager to uninstall .NET SDK or runtime. .NET Core installations support most popular package managers. Consult the documentation for your distribution's package manager for the precise syntax on your environment: | ||
|
||
- [apt-get(8)](https://linux.die.net/man/8/apt-get) is used by Debian based systems, including Ubuntu. | ||
- [yum(8)](https://linux.die.net/man/8/yum) is used on Fedora, CentOS, and Oracle Linux. | ||
- [zypper(8)](https://en.opensuse.org/SDB:Zypper_manual_(plain)) is used on openSUSE and SUSE Linux Enterprise System (SLES). | ||
- [dnf(8)](https://dnf.readthedocs.io/latest/command_ref.html) is used on Fedora. | ||
|
||
In almost all cases, the command to remove a package is `remove`. | ||
|
||
The package name for the .NET Core SDK installation for most package managers is `dotnet-sdk`, followed by the version number. Starting with the version 2.1.300 of the .NET Core SDK and version `2.1` of the runtime, only the major and minor version numbers are necessary: for example, the .NET Core SDK version 2.1.300 can be referenced as the package `dotnet-sdk-2.1`. Prior versions require the entire version string: for example, `dotnet-sdk-2.1.200` would be required for version 2.1.200 of the .NET Core SDK. | ||
|
||
For machines that have installed only the runtime, and not the SDK, the package name is `dotnet-runtime-<version>` for the .NET Core runtime, and `aspnetcore-runtime-<version>` for the entire runtime stack. | ||
|
||
.NET Core installations prior to 2.0 did not uninstall the host application when the SDK was uninstalled using the package manager. Using `apt-get`, the command is: | ||
|
||
```bash | ||
apt-get remove dotnet-host | ||
``` | ||
|
||
Note that there is no version attached to `dotnet-host` | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. missing punctuation |
||
|
||
If you installed using a tarball, you must remove .NET Core using the manual method: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. period instead of colon here? |
||
|
||
You remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.1 SDK and runtime, you would use the following bash commands: | ||
|
||
```bash | ||
sudo rm -rf /usr/share/dotnet/sdk/1.0.1 | ||
sudo rm -rf /usr/share/dotnet/shared/Microsoft.NETCore.App/1.0.1 | ||
sudo rm -rf /usr/share/dotnet/shared/Microsoft.AspNetCore.App/1.0.1 | ||
sudo rm -rf /usr/share/dotnet/host/fxr/1.0.1 | ||
``` | ||
|
||
The parent directories for the SDK and runtime are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. | ||
|
||
# [macOS](#tab/macOS) | ||
|
||
On Mac, you must remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.1 SDK and runtime, you would use the following bash commands: | ||
|
||
```bash | ||
sudo rm -rf /usr/local/share/dotnet/sdk/1.0.1 | ||
sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.NETCore.App/1.0.1 | ||
sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.AspNetCore.App/1.0.1 | ||
sudo rm -rf /usr/local/share/dotnet/host/fxr/1.0.1 | ||
``` | ||
|
||
The parent directories for the SDK and runtime are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. | ||
|
||
Starting with .NET Core 2.1, there is no need to uninstall the .NET Core SDK when upgrading it using a package manager. The package manager `update` or `refresh` commands will automatically remove the older version upon the successful installation of a newer version. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think you need to end the tab section with ---, no? |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
--- | ||
title: .NET Core version history | ||
description: See the timeline for versions of the .NET Core runtime, .NET Core SDK, C# compiler and VB.NET compiler. | ||
ms.date: 07/26/2018 | ||
--- | ||
|
||
# NET Core version history | ||
|
||
Version numbers for .NET Core are challenging because .NET Core SDK and .NET Core Runtime release on different cadences. The different cadences means a choice to do only two of the following three things: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. the last sentence is a bit weird in the sense that this is a choice for the team. cadences means -> cadences mean |
||
|
||
1. Release independently, specifically allowing tools, C# and VB to advance faster than the .NET Core Runtime. | ||
2. Maintain alignment in version numbers between .NET Core SDK and .NET Core Runtime. | ||
3. Use semantic versioning for both the .NET Core SDK and .NET Core Runtime. | ||
|
||
2.0.0 forced version alignment and proceeded smoothly for one release. In December 2017 .NET Core SDK had a feature release, with no corresponding release in the .NET Core Runtime. The team chose goals 1 and 3, losing alignment between the .NET Core Runtime and SDK. Several .NET Core SDK 2.1.x versions were released before .NET Core Runtime 2.1. Since the SDK is not forwards compatible, these 2.1.x SDK versions could not target .NET Core Runtime 2.1. The team responded to the considerable confusion by switching to goals 1 and 2, abandoning semantic versioning as described in [.NET Core versioning](index.md#versioning-details). | ||
|
||
Because of the timing of the decision to abandon semantic versioning, there were transitional releases in the 2.1.10x and 2.1.20x version number ranges that also can't target .NET Core Runtime 2.1. | ||
|
||
The first two digits of the version numbers realign with the 2.1.0 version of the .NET Core Runtime and the 2.1.300 version of the .NET Core SDK. | ||
|
||
Detailed information about the versions of individual components, including framework and language compiler versions, can be found on the [.NET Core downloads page](https://www.microsoft.com/net/download/dotnet-core/current). For detailed information about previous versions, select the requested version from the [.NET Core download archives page](https://www.microsoft.com/net/download/archives). Detailed support information can be found in the article describing the official [.NET Support Policy](https://www.microsoft.com/net/Support/Policy). |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -121,7 +121,9 @@ | |
### [Unit Testing Published Output](core/testing/unit-testing-published-output.md) | ||
### [Live unit testing .NET Core projects with Visual Studio](/visualstudio/test/live-unit-testing-start) | ||
## [Versioning](core/versions/index.md) | ||
### [.NET Core Version History](core/versions/version-history.md) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Sentence case to match the casing of the peer topics? |
||
### [.NET Core version selection](core/versions/selection.md) | ||
### [Removing outdated Runtimes and SDKs](core/versions/remove-runtime-sdk-versions.md) | ||
## [Runtime IDentifier catalog](core/rid-catalog.md) | ||
## [.NET Core SDK Overview](core/sdk.md) | ||
## [.NET Core CLI Tools](core/tools/index.md) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you may want to remove outdated versions of .NET Core (from your machines?)