Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions docs/azure/includes/dotnet-all.md

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions docs/azure/includes/dotnet-new.md

Large diffs are not rendered by default.

12 changes: 8 additions & 4 deletions docs/core/diagnostics/dotnet-monitor.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: dotnet-monitor diagnostic tool - .NET
description: Learn how to install and use the dotnet-monitor tool to collect dumps, traces, logs, and metrics from applications in production environments.
ms.date: 06/16/2022
ms.date: 03/04/2025
ms.topic: reference
---
# Diagnostic monitoring and collection utility (dotnet-monitor)
Expand Down Expand Up @@ -183,12 +183,12 @@ dotnet-monitor config show [-h|--help] [-u|--urls] [-m|--metrics] [--metricUrls]

## dotnet-monitor generatekey

Generate an API key and hash for HTTP authentication.
Generate an API key and hash for HTTP authentication.

### Synopsis

```console
dotnet-monitor generatekey [-h|--help] [-o|--output]
dotnet-monitor generatekey [-h|--help] [-o|--output] [-e|--expiration]
```

### Options
Expand All @@ -209,6 +209,10 @@ dotnet-monitor generatekey [-h|--help] [-o|--output]
- `Shell` - Outputs in a format usable in Linux shells such as Bash.
- `Text` - Outputs in a format that is plain text.

## See Also
- **`-e|--expiration <expiration>`**

The expiration time after which the generated API key will no longer be accepted. The value must be in <xref:System.TimeSpan> format (for example, "7.00:00:00" for 7 days). Default: "7.00:00:00" (7 days).

## See also

- [dotnet/dotnet-monitor](https://github.com/dotnet/dotnet-monitor/tree/main/documentation)
57 changes: 36 additions & 21 deletions docs/core/install/linux-ubuntu.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: .NET and Ubuntu overview
description: Learn about the ways you can install .NET on Ubuntu, either from the built-in package feed, the .NET backports repository, or the Microsoft repository.
author: adegeo
ms.author: adegeo
ms.date: 12/13/2024
ms.date: 03/03/2025
ms.custom: updateeachrelease, linux-related-content
---

Expand Down Expand Up @@ -48,7 +48,7 @@ Use the following sections to determine how you should install .NET:

### I'm using Ubuntu 22.04 or later, and I only need .NET

Install .NET through the Ubuntu feed. For more information, see the following pages:
If you don't need other Microsoft packages, such as `powershell`, `mdatp`, or `mssql`, install .NET through the Ubuntu feed. For more information, see the following pages:

- [Install .NET on Ubuntu 24.10](linux-ubuntu-install.md?pivots=os-linux-ubuntu-2410).
- [Install .NET on Ubuntu 24.04](linux-ubuntu-install.md?pivots=os-linux-ubuntu-2404).
Expand Down Expand Up @@ -137,27 +137,34 @@ Canonical supports .NET versions in the built-in Ubuntu feed for the lifetime of

[!INCLUDE [versions-not-supported](includes/versions-not-supported.md)]

## Ubuntu .NET backports package repository
## Register a package repository

Depending on your version of Ubuntu, you might need to register either the Ubuntu backports or the Microsoft package repository.

> [!IMPORTANT]
> Make sure you consider the information in the [Decide how to install .NET section](#decide-how-to-install-net).

- [Register the Ubuntu .NET backports package repository](#ubuntu-net-backports-package-repository)
- [Register the Microsoft package repository](#register-the-microsoft-package-repository)

### Ubuntu .NET backports package repository

The Ubuntu .NET backports package repository provides versions of .NET that aren't available in the built-in Ubuntu feed. The [Supported distributions](#supported-distributions) section provides a table that lists which versions of .NET are available in the package feed. Canonical maintains the packages contained in this package repository and provides best-effort support, which does not extend beyond the Microsoft-provided support lifetime or the support period of the particular Ubuntu version.

See the [web-view of the Ubuntu .NET backports package repository](https://launchpad.net/~dotnet/+archive/ubuntu/backports) for more details.

### Register the Ubuntu .NET backports package repository
#### Register the Ubuntu .NET backports package repository

Open a terminal and run the following command:

```bash
sudo add-apt-repository ppa:dotnet/backports
```

> [!TIP]
> You do not need to call `apt update`. The `add-apt-repository` command does this by default.

> [!NOTE]
> The Ubuntu .NET backports package repository is compatible with the built-in Ubuntu feed. Therefore you do not need to configure your package manager to ignore .NET packages in the built-in Ubuntu feed.

### Unregister the Ubuntu .NET backports package repository
#### Unregister the Ubuntu .NET backports package repository

If you no longer want to consume packages from the Ubuntu .NET backports package repository you can unregister it. Open a terminal and run the following command:

Expand All @@ -168,7 +175,7 @@ sudo add-apt-repository --remove ppa:dotnet/backports
> [!IMPORTANT]
> Unregistering the Ubuntu .NET backports package repository does not uninstall any packages.

### add-apt-repository command not found
#### add-apt-repository command not found

The [`add-apt-repository(1)`](https://manpages.ubuntu.com/manpages/noble/en/man1/add-apt-repository.1.html) utility is pre-installed on most Ubuntu installations.

Expand All @@ -179,7 +186,7 @@ sudo apt update
sudo apt install software-properties-common
```

## Register the Microsoft package repository
### Register the Microsoft package repository

> [!IMPORTANT]
> This only applies to Ubuntu versions prior to 24.04. Starting with Ubuntu 24.04, Microsoft no longer publishes packages to the Microsoft package repository. Use the [supported distributions table](#supported-distributions) to determine the best way to install .NET.
Expand Down Expand Up @@ -221,7 +228,11 @@ sudo apt update
>
> You can use a web browser and navigate to <https://packages.microsoft.com/config/ubuntu/> to see which versions of Ubuntu are available to use as the `$repo_version` value.

## Install .NET
## Install, uninstall, or update .NET

The following sections describe how to manage .NET through the package manager.

### Install .NET

Install .NET through the package manager with the `sudo apt install <package-name>` command. Replace `<package-name>` with the name of the .NET package you want to install. For example, to install .NET SDK 9.0, use the command `sudo apt install dotnet-sdk-9.0`. The following table lists the currently supported .NET packages (which [might vary by your Ubuntu version](#supported-distributions)):

Expand All @@ -239,7 +250,7 @@ Install .NET through the package manager with the `sudo apt install <package-nam

Some environment variables affect how .NET is run after it's installed. For more information, see [.NET SDK and CLI environment variables](../tools/dotnet-environment-variables.md#net-sdk-and-cli-environment-variables).

## Uninstall .NET
### Uninstall .NET

If you installed .NET through a package manager, uninstall in the same way with the `apt-get remove` command:

Expand All @@ -249,15 +260,7 @@ sudo apt-get remove dotnet-sdk-6.0

For more information, see [Uninstall .NET](remove-runtime-sdk-versions.md?pivots=os-linux#uninstall-net).

## Install preview versions

[!INCLUDE [preview installs don't support package managers](./includes/linux-install-previews.md)]

## Remove preview versions

[!INCLUDE [package-manager uninstall notice](./includes/linux-uninstall-preview-info.md)]

## Use APT to update .NET
### Update .NET

If you installed .NET through a package manager, you can upgrade the package with the `apt upgrade` command. For example, the following commands upgrade the `dotnet-sdk-9.0` package with the latest version:

Expand All @@ -269,6 +272,18 @@ sudo apt upgrade dotnet-sdk-9.0
> [!TIP]
> If you've upgraded your Linux distribution since installing .NET, you may need to reconfigure the Microsoft package repository. Run the installation instructions for your current distribution version to upgrade to the appropriate package repository for .NET updates.

## Manage preview versions

The following sections describe how to install and uninstall preview releases of .NET.

### Install preview versions

[!INCLUDE [preview installs don't support package managers](./includes/linux-install-previews.md)]

### Remove preview versions

[!INCLUDE [package-manager uninstall notice](./includes/linux-uninstall-preview-info.md)]

## Troubleshooting

Starting with Ubuntu 22.04, you might run into a situation where it seems only a piece of .NET is available. For example, you've installed the runtime and the SDK, but when you run `dotnet --info` only the runtime is listed. This situation can be related to using two different package sources. The built-in Ubuntu 22.04 and Ubuntu 22.10 package feeds include some versions of .NET, but not all, and you might have also installed .NET from the Microsoft feeds. For more information about how to fix this problem, see [Troubleshoot .NET errors related to missing files on Linux](linux-package-mixup.md?pivots=os-linux-ubuntu#solutions).
Expand Down
15 changes: 13 additions & 2 deletions docs/core/testing/unit-testing-platform-faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,13 @@ ms.author: amauryleve
ms.date: 07/09/2024
---

# Microsoft.Testing.Platform FAQ
# Microsoft.Testing.Platform and extensions FAQ

This article contains answers to commonly asked questions about `Microsoft.Testing.Platform`.

## error CS8892: Method 'TestingPlatformEntryPoint.Main(string[])' will not be used as an entry point because a synchronous entry point 'Program.Main(string[])' was found
## Microsoft.Testing.Platform.MSBuild

### error CS8892: Method 'TestingPlatformEntryPoint.Main(string[])' will not be used as an entry point because a synchronous entry point 'Program.Main(string[])' was found

Manually defining an entry point (`Main`) in a test project or referencing a test project from an application that already has an entry point results in a conflict with the entry point generated by `Microsoft.Testing.Platform`. To avoid this issue, take one of these steps:

Expand All @@ -19,3 +21,12 @@ Manually defining an entry point (`Main`) in a test project or referencing a tes
- Disable the generation of the entry point by setting the `<GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>` MSBuild property.

- Completely disable the transitive dependency to `Microsoft.Testing.Platform.MSBuild` by setting the `<IsTestingPlatformApplication>false</IsTestingPlatformApplication>` MSBuild property in the project that references a test project. This is needed when you reference a test project from a non-test project, for example, a console app that references a test application.

## Microsoft.Testing.Extensions.Fakes

### Fakes error Failed to resolve profiler path from COR_PROFILER_PATH and COR_PROFILER environment variables

This error can occur if not all of the Fakes assemblies are present in the bin folder.

- Ensure that the project either uses the [MSTest.SDK](./unit-testing-mstest-sdk.md) or references [Microsoft.Testing.Extensions.Fakes](./unit-testing-platform-extensions-fakes.md).
- For .NET Framework projects, avoid setting `<PlatformTarget>AnyCPU</PlatformTarget>` as this results in NuGet not copying all files to the bin folder.
6 changes: 4 additions & 2 deletions docs/core/testing/unit-testing-platform-vs-vstest.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,10 @@ VSTest is extensible and common types are placed in [Microsoft.TestPlatform.Obje

Microsoft.Testing.Platform is based on [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform) NuGet package and other libraries in the `Microsoft.Testing.*` namespace. Like VSTest, the `Microsoft.Testing.Platform` is open-source and has a [microsoft/testfx](https://github.com/microsoft/testfx/tree/main/src/Platform/Microsoft.Testing.Platform) GitHub repository.

## Communication protocol (preview)
## Communication protocol

> [!NOTE]
> The Visual Studio Test Explorer supports the Microsoft.Testing.Platform protocol in the **preview** versions since 17.10 onward. If you run/debug your tests using earlier versions of Visual Studio, Test Explorer will use `vstest.console.exe` and the old protocol to run these tests.
> The Visual Studio Test Explorer supports the Microsoft.Testing.Platform protocol since 17.12 onward. If you run/debug your tests using earlier versions of Visual Studio, Test Explorer will use `vstest.console.exe` and the old protocol to run these tests.

Microsoft.Testing.Platform uses a JSON-RPC based protocol to communicate between Visual Studio and the test runner process. The protocol is documented in the [MSTest GitHub repository](https://github.com/microsoft/testfx/tree/main/docs/mstest-runner-protocol).

Expand All @@ -49,6 +49,8 @@ VSTest also uses a JSON based communication protocol, but it's not JSON-RPC base

To disable the use of the new protocol in Test Explorer, you can edit your project to add the following property: `<DisableTestingPlatformServerCapability>true</DisableTestingPlatformServerCapability>`.

You can also go to Preview Features options in Visual Studio and deselect the "Use testing platform server mode" option.

## Executables

VSTest ships multiple executables, notably `vstest.console.exe`, `testhost.exe`, and `datacollector.exe`. However, MSTest is embedded directly into your test project and doesn't ship any other executables. The executable your test project compiles to is used to host all the testing tools and carry out all the tasks needed to run tests.
Expand Down
5 changes: 4 additions & 1 deletion docs/core/tools/dotnet-list-package.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,10 @@ The project or solution file to operate on. If not specified, the command search

- **`--vulnerable`**

Lists packages that have known vulnerabilities. Cannot be combined with `--deprecated` or `--outdated` options. Nuget.org is the source of information about vulnerabilities. For more information, see [Vulnerabilities](/nuget/api/registration-base-url-resource) and [How to Scan NuGet Packages for Security Vulnerabilities](https://devblogs.microsoft.com/nuget/how-to-scan-nuget-packages-for-security-vulnerabilities/).
Lists packages that have known vulnerabilities. Cannot be combined with `--deprecated` or `--outdated` options.
Use the `<AuditSources>` property in your configuration file to specify your source of vulnerability data, which is acquired from the [VulnerabilityInfo](/nuget/api/vulnerability-info) resource.
If `<AuditSources>` is not specified, the specified `<PackageSources>` are used to load vulnerability data.
For more information, see [Audit sources](/nuget/concepts/auditing-packages#audit-sources) and [How to scan NuGet packages for security vulnerabilities](https://devblogs.microsoft.com/nuget/how-to-scan-nuget-packages-for-security-vulnerabilities/).

- **`--format <console|json>`**

Expand Down
5 changes: 0 additions & 5 deletions docs/core/tools/dotnet-test.md
Original file line number Diff line number Diff line change
Expand Up @@ -419,7 +419,6 @@ dotnet test
[--directory <DIRECTORY_PATH>]
[--test-modules <EXPRESSION>]
[--root-directory <ROOT_PATH>]
[--list-tests]
[--max-parallel-test-modules <NUMBER>]
[-a|--arch <ARCHITECTURE>]
[-c|--configuration <CONFIGURATION>]
Expand Down Expand Up @@ -473,10 +472,6 @@ With Microsoft Testing Platform, `dotnet test` operates faster than with VSTest.

Specifies the root directory of the `--test-modules` option. It can only be used with the `--test-modules` option.

- **`--list-tests`**

Lists the discovered tests instead of running the tests.

- **`--max-parallel-test-modules <NUMBER>`**

Specifies the maximum number of test modules that can run in parallel.
Expand Down
6 changes: 3 additions & 3 deletions docs/core/whats-new/dotnet-10/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,6 @@ For more information, see [What's new in Windows Forms for .NET 10](/dotnet/desk

## See also

- [.NET 10 Preview 1 container image updates](https://github.com/dotnet/core/blob/dotnet10p1/release-notes/10.0/preview/preview1/containers.md)
- [F# updates in .NET 10 Preview 1](https://github.com/dotnet/core/blob/dotnet10p1/release-notes/10.0/preview/preview1/fsharp.md)
- [Visual Basic updates in .NET 10 Preview 1](https://github.com/dotnet/core/blob/dotnet10p1/release-notes/10.0/preview/preview1/visualbasic.md)
- [.NET 10 Preview 1 container image updates](https://github.com/dotnet/core/blob/main/release-notes/10.0/preview/preview1/containers.md)
- [F# updates in .NET 10 Preview 1](https://github.com/dotnet/core/blob/main/release-notes/10.0/preview/preview1/fsharp.md)
- [Visual Basic updates in .NET 10 Preview 1](https://github.com/dotnet/core/blob/main/release-notes/10.0/preview/preview1/visualbasic.md)
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@ By default, compiler output from a given set of inputs is unique, since the comp
- @ response files
- Analyzers
- Rulesets
- [Source Link](https://github.com/dotnet/sourcelink) data extracted from the repository (e.g. git commit SHA, repository URL, etc.)
- Other files that may be used by analyzers
- The current culture (for the language in which diagnostics and exception messages are produced).
- The default encoding (or the current code page) if the encoding isn't specified.
Expand Down
2 changes: 1 addition & 1 deletion docs/framework/configure-apps/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ This article describes the syntax of configuration files and provides informatio

To create the output configuration file that's deployed with the app, Visual Studio copies the source configuration file to the directory where the compiled assembly is placed. This file is named *\<yourappname>.exe.config*. For example, an app named *myApp.exe* has an output configuration file named *myApp.exe.config*.

In some cases, Visual Studio may modify the output configuration file. For more information, see [Redirect versions at the app level](redirect-assembly-versions.md#BKMK_Redirectingassemblyversionsattheapplevel) in [Redirecting assembly versions](redirect-assembly-versions.md).
In some cases, Visual Studio might modify the output configuration file. For more information, see [Redirect versions at the app level](redirect-assembly-versions.md#redirect-versions-at-the-app-level).

- ASP.NET-hosted app.

Expand Down
Loading
Loading