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
6 changes: 3 additions & 3 deletions docs/azure/includes/dotnet-all.md
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,7 @@
| Resource Management - Confluent | NuGet [1.2.1](https://www.nuget.org/packages/Azure.ResourceManager.Confluent/1.2.1) | [docs](/dotnet/api/overview/azure/ResourceManager.Confluent-readme) | GitHub [1.2.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.Confluent_1.2.1/sdk/confluent/Azure.ResourceManager.Confluent/) |
| Resource Management - Connected VMware vSphere | NuGet [1.1.1](https://www.nuget.org/packages/Azure.ResourceManager.ConnectedVMwarevSphere/1.1.1) | [docs](/dotnet/api/overview/azure/ResourceManager.ConnectedVMwarevSphere-readme) | GitHub [1.1.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ConnectedVMwarevSphere_1.1.1/sdk/connectedvmwarevsphere/Azure.ResourceManager.ConnectedVMwarevSphere/) |
| Resource Management - Consumption | NuGet [1.0.1](https://www.nuget.org/packages/Azure.ResourceManager.Consumption/1.0.1)<br>NuGet [1.1.0-beta.3](https://www.nuget.org/packages/Azure.ResourceManager.Consumption/1.1.0-beta.3) | [docs](/dotnet/api/overview/azure/ResourceManager.Consumption-readme) | GitHub [1.0.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.Consumption_1.0.1/sdk/consumption/Azure.ResourceManager.Consumption/)<br>GitHub [1.1.0-beta.3](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.Consumption_1.1.0-beta.3/sdk/consumption/Azure.ResourceManager.Consumption/) |
| Resource Management - Container Apps | NuGet [1.3.0](https://www.nuget.org/packages/Azure.ResourceManager.AppContainers/1.3.0) | [docs](/dotnet/api/overview/azure/ResourceManager.AppContainers-readme) | GitHub [1.3.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.AppContainers_1.3.0/sdk/containerapps/Azure.ResourceManager.AppContainers/) |
| Resource Management - Container Apps | NuGet [1.3.0](https://www.nuget.org/packages/Azure.ResourceManager.AppContainers/1.3.0)<br>NuGet [1.4.0-beta.1](https://www.nuget.org/packages/Azure.ResourceManager.AppContainers/1.4.0-beta.1) | [docs](/dotnet/api/overview/azure/ResourceManager.AppContainers-readme) | GitHub [1.3.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.AppContainers_1.3.0/sdk/containerapps/Azure.ResourceManager.AppContainers/)<br>GitHub [1.4.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.AppContainers_1.4.0-beta.1/sdk/containerapps/Azure.ResourceManager.AppContainers/) |
| Resource Management - Container Instances | NuGet [1.2.1](https://www.nuget.org/packages/Azure.ResourceManager.ContainerInstance/1.2.1)<br>NuGet [1.3.0-beta.1](https://www.nuget.org/packages/Azure.ResourceManager.ContainerInstance/1.3.0-beta.1) | [docs](/dotnet/api/overview/azure/ResourceManager.ContainerInstance-readme) | GitHub [1.2.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ContainerInstance_1.2.1/sdk/containerinstance/Azure.ResourceManager.ContainerInstance/)<br>GitHub [1.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ContainerInstance_1.3.0-beta.1/sdk/containerinstance/Azure.ResourceManager.ContainerInstance/) |
| Resource Management - Container Registry | NuGet [1.2.1](https://www.nuget.org/packages/Azure.ResourceManager.ContainerRegistry/1.2.1)<br>NuGet [1.3.0-beta.2](https://www.nuget.org/packages/Azure.ResourceManager.ContainerRegistry/1.3.0-beta.2) | [docs](/dotnet/api/overview/azure/ResourceManager.ContainerRegistry-readme) | GitHub [1.2.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ContainerRegistry_1.2.1/sdk/containerregistry/Azure.ResourceManager.ContainerRegistry/)<br>GitHub [1.3.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ContainerRegistry_1.3.0-beta.2/sdk/containerregistry/Azure.ResourceManager.ContainerRegistry/) |
| Resource Management - Container Service | NuGet [1.2.3](https://www.nuget.org/packages/Azure.ResourceManager.ContainerService/1.2.3) | [docs](/dotnet/api/overview/azure/ResourceManager.ContainerService-readme) | GitHub [1.2.3](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ContainerService_1.2.3/sdk/containerservice/Azure.ResourceManager.ContainerService/) |
Expand Down Expand Up @@ -378,8 +378,8 @@
| Unknown Display Name | NuGet [0.10.1](https://www.nuget.org/packages/Azure.Iot.Operations.Services/0.10.1) | | |
| Unknown Display Name | NuGet [1.0.0-beta3](https://www.nuget.org/packages/Azure.Monitor.OpenTelemetry.Profiler/1.0.0-beta3) | | |
| Unknown Display Name | NuGet [1.0.0-beta.0](https://www.nuget.org/packages/Microsoft.Azure.Cosmos.FaultInjection/1.0.0-beta.0) | | |
| Unknown Display Name | NuGet [1.0.44](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.MySql/1.0.44) | | |
| Unknown Display Name | NuGet [1.0.44](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.MySql/1.0.44) | | |
| Unknown Display Name | NuGet [1.0.98](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.MySql/1.0.98) | | |
| Unknown Display Name | NuGet [1.0.98](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.MySql/1.0.98) | | |
| Unknown Display Name | NuGet [1.43.0](https://www.nuget.org/packages/Microsoft.CognitiveServices.Speech.CLI/1.43.0) | | |
| Unknown Display Name | NuGet [1.43.0](https://www.nuget.org/packages/Microsoft.CognitiveServices.Speech.Extension.Embedded.SR/1.43.0) | | |
| Unknown Display Name | NuGet [1.43.0](https://www.nuget.org/packages/Microsoft.CognitiveServices.Speech.Extension.Embedded.TTS/1.43.0) | | |
Expand Down
2 changes: 1 addition & 1 deletion docs/azure/includes/dotnet-new.md
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,7 @@
| Resource Management - Confluent | NuGet [1.2.1](https://www.nuget.org/packages/Azure.ResourceManager.Confluent/1.2.1) | [docs](/dotnet/api/overview/azure/ResourceManager.Confluent-readme) | GitHub [1.2.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.Confluent_1.2.1/sdk/confluent/Azure.ResourceManager.Confluent/) |
| Resource Management - Connected VMware vSphere | NuGet [1.1.1](https://www.nuget.org/packages/Azure.ResourceManager.ConnectedVMwarevSphere/1.1.1) | [docs](/dotnet/api/overview/azure/ResourceManager.ConnectedVMwarevSphere-readme) | GitHub [1.1.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ConnectedVMwarevSphere_1.1.1/sdk/connectedvmwarevsphere/Azure.ResourceManager.ConnectedVMwarevSphere/) |
| Resource Management - Consumption | NuGet [1.0.1](https://www.nuget.org/packages/Azure.ResourceManager.Consumption/1.0.1)<br>NuGet [1.1.0-beta.3](https://www.nuget.org/packages/Azure.ResourceManager.Consumption/1.1.0-beta.3) | [docs](/dotnet/api/overview/azure/ResourceManager.Consumption-readme) | GitHub [1.0.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.Consumption_1.0.1/sdk/consumption/Azure.ResourceManager.Consumption/)<br>GitHub [1.1.0-beta.3](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.Consumption_1.1.0-beta.3/sdk/consumption/Azure.ResourceManager.Consumption/) |
| Resource Management - Container Apps | NuGet [1.3.0](https://www.nuget.org/packages/Azure.ResourceManager.AppContainers/1.3.0) | [docs](/dotnet/api/overview/azure/ResourceManager.AppContainers-readme) | GitHub [1.3.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.AppContainers_1.3.0/sdk/containerapps/Azure.ResourceManager.AppContainers/) |
| Resource Management - Container Apps | NuGet [1.3.0](https://www.nuget.org/packages/Azure.ResourceManager.AppContainers/1.3.0)<br>NuGet [1.4.0-beta.1](https://www.nuget.org/packages/Azure.ResourceManager.AppContainers/1.4.0-beta.1) | [docs](/dotnet/api/overview/azure/ResourceManager.AppContainers-readme) | GitHub [1.3.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.AppContainers_1.3.0/sdk/containerapps/Azure.ResourceManager.AppContainers/)<br>GitHub [1.4.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.AppContainers_1.4.0-beta.1/sdk/containerapps/Azure.ResourceManager.AppContainers/) |
| Resource Management - Container Instances | NuGet [1.2.1](https://www.nuget.org/packages/Azure.ResourceManager.ContainerInstance/1.2.1)<br>NuGet [1.3.0-beta.1](https://www.nuget.org/packages/Azure.ResourceManager.ContainerInstance/1.3.0-beta.1) | [docs](/dotnet/api/overview/azure/ResourceManager.ContainerInstance-readme) | GitHub [1.2.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ContainerInstance_1.2.1/sdk/containerinstance/Azure.ResourceManager.ContainerInstance/)<br>GitHub [1.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ContainerInstance_1.3.0-beta.1/sdk/containerinstance/Azure.ResourceManager.ContainerInstance/) |
| Resource Management - Container Registry | NuGet [1.2.1](https://www.nuget.org/packages/Azure.ResourceManager.ContainerRegistry/1.2.1)<br>NuGet [1.3.0-beta.2](https://www.nuget.org/packages/Azure.ResourceManager.ContainerRegistry/1.3.0-beta.2) | [docs](/dotnet/api/overview/azure/ResourceManager.ContainerRegistry-readme) | GitHub [1.2.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ContainerRegistry_1.2.1/sdk/containerregistry/Azure.ResourceManager.ContainerRegistry/)<br>GitHub [1.3.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ContainerRegistry_1.3.0-beta.2/sdk/containerregistry/Azure.ResourceManager.ContainerRegistry/) |
| Resource Management - Container Service | NuGet [1.2.3](https://www.nuget.org/packages/Azure.ResourceManager.ContainerService/1.2.3) | [docs](/dotnet/api/overview/azure/ResourceManager.ContainerService-readme) | GitHub [1.2.3](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.ContainerService_1.2.3/sdk/containerservice/Azure.ResourceManager.ContainerService/) |
Expand Down
3 changes: 2 additions & 1 deletion docs/core/compatibility/10.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Breaking changes in .NET 10
titleSuffix: ""
description: Navigate to the breaking changes in .NET 10.
ms.date: 03/26/2025
ms.date: 04/03/2025
ai-usage: ai-assisted
no-loc: [Blazor, Razor, Kestrel]
---
Expand Down Expand Up @@ -51,6 +51,7 @@ If you're migrating an app to .NET 10, the breaking changes listed here might af

| Title | Type of change | Introduced version |
|----------------------------------------------------------------------------------------------------------------------|---------------------|--------------------|
| [.NET CLI `--interactive` defaults to `true` in user scenarios](sdk/10.0/dotnet-cli-interactive.md) | Behavioral change | Preview 3 |
| [Default workload configuration from 'loose manifests' to 'workload sets' mode](sdk/10.0/default-workload-config.md) | Behavioral change | Preview 2 |
| [`dotnet restore` audits transitive packages](sdk/10.0/nugetaudit-transitive-packages.md) | Behavioral change | Preview 3 |
| [MSBUILDCUSTOMBUILDEVENTWARNING escape hatch removed](sdk/10.0/custom-build-event-warning.md) | Behavioral change | Preview 1 |
Expand Down
9 changes: 5 additions & 4 deletions docs/core/compatibility/9.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Breaking changes in .NET 9
titleSuffix: ""
description: Navigate to the breaking changes in .NET 9.
ms.date: 03/26/2025
ms.date: 04/03/2025
no-loc: [Blazor, Razor, Kestrel]
---
# Breaking changes in .NET 9
Expand Down Expand Up @@ -68,9 +68,10 @@ If you're migrating an app to .NET 9, the breaking changes listed here might aff

## Deployment

| Title | Type of change | Introduced version |
|-----------------------------------------------------------------------------------------------------|---------------------|--------------------|
| [Deprecated desktop Windows/macOS/Linux MonoVM runtime packages](deployment/9.0/monovm-packages.md) | Source incompatible | Preview 7 |
| Title | Type of change | Introduced version |
|-----------------------------------------------------------------------------------------------------------------|---------------------|--------------------|
| [Deprecated desktop Windows/macOS/Linux MonoVM runtime packages](deployment/9.0/monovm-packages.md) | Source incompatible | Preview 7 |
| [Assembly load directory resolves through symbolic links on Windows](deployment/9.0/assembly-load-directory.md) | Behavioral change | GA |

## Interop

Expand Down
73 changes: 73 additions & 0 deletions docs/core/compatibility/deployment/9.0/assembly-load-directory.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---
title: "Breaking change - Assembly load directory resolves through symbolic links on Windows"
description: "Learn about the breaking change in .NET 9 where the assembly load directory resolves through symbolic links."
ms.date: 4/3/2025
ai-usage: ai-assisted
ms.custom: https://github.com/dotnet/docs/issues/45584
---

# Assembly load directory resolves through symbolic links on Windows

Starting in .NET 9, the .NET host resolves symbolic links before determining the assembly load directory when running on Windows.

## Version introduced

.NET 9

## Previous behavior

The .NET host didn't resolve symbolic links before calculating load paths. Assembly loads were resolved relative to the symbolic link itself, not the destination of the link.

For example, if an application was laid out as follows:

```
/myapp/
myapp.exe
myapp.dll
```

And a symbolic link was created in another directory:

```
otherdir/
myapp.exe -> /myapp/myapp.exe
```

Executing `otherdir/myapp.exe` would resolve loads relative to `otherdir/`, not `/myapp/`.

## New behavior

The .NET host now resolves the destination of a symbolic link before determining the assembly load directory. Assembly loads are resolved relative to the resolved location of the host file.

Using the same example:

```
/myapp/
myapp.exe
myapp.dll
```

With a symbolic link:

```
otherdir/
myapp.exe -> /myapp/myapp.exe
```

Executing `otherdir/myapp.exe` resolves loads relative to `/myapp/`. Files in `otherdir/` are not considered.

## Type of breaking change

This is a [behavioral change](../../categories.md#behavioral-change).

## Reason for change

The previous behavior on Windows was undocumented, inconsistent with non-Windows implementations, and prevented supported use of symbolic links to the .NET host. This change ensures consistent behavior and enables scenarios where symbolic links to the .NET host are used properly.

## Recommended action

If your application relied on the previous behavior, ensure that all relevant binaries are located in the directory behind the symbolic link, rather than next to it. Avoid constructing a file layout that depends on the symbolic link's location.

## Affected APIs

None.
56 changes: 56 additions & 0 deletions docs/core/compatibility/sdk/10.0/dotnet-cli-interactive.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
---
title: "Breaking change - .NET CLI `--interactive` defaults to `true` in user scenarios"
description: "Learn about the breaking change in .NET 10 Preview 3 where the --interactive flag defaults to true in user-centric scenarios."
ms.date: 4/3/2025
ai-usage: ai-assisted
ms.custom: https://github.com/dotnet/docs/issues/45548
---

# .NET CLI `--interactive` defaults to `true` in user scenarios

The `--interactive` flag for the .NET CLI now defaults to `true` in user-centric scenarios. The behavior remains unchanged for CI/CD environments.

## Version introduced

.NET 10 Preview 3

## Previous behavior

The `--interactive` flag always defaulted to `false` unless explicitly specified by the user.

```bash
dotnet restore --interactive
# Required explicitly to enable interactivity
```

## New behavior

The `--interactive` flag defaults to `true` in user-centric scenarios, such as when commands are run directly by a user. In CI/CD environments or when the process output stream is redirected, the flag defaults to `false`.

```bash
dotnet restore
# Interactivity is enabled by default in user-centric scenarios
```

## Type of breaking change

This is a [behavioral change](../../categories.md#behavioral-change).

## Reason for change

This change improves the user experience by:

- Simplifying NuGet authentication, addressing a common pain point.
- Providing a unified signal for enabling future CLI interactivity features.

## Recommended action

No action is required for most users. To explicitly disable interactivity, pass the `--interactive false` flag:

```bash
dotnet restore --interactive false
```

## Affected APIs

None.
8 changes: 8 additions & 0 deletions docs/core/compatibility/toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ items:
href: globalization/10.0/version-override.md
- name: SDK and MSBuild
items:
- name: .NET CLI `--interactive` defaults to `true` in user scenarios
href: sdk/10.0/dotnet-cli-interactive.md
- name: "`dotnet restore` audits transitive packages"
href: sdk/10.0/nugetaudit-transitive-packages.md
- name: Default workload configuration from 'loose manifests' to 'workload sets' mode
Expand Down Expand Up @@ -140,6 +142,8 @@ items:
items:
- name: Deprecated desktop Windows/macOS/Linux MonoVM runtime packages
href: deployment/9.0/monovm-packages.md
- name: Assembly load directory resolves through symbolic links on Windows
href: deployment/9.0/assembly-load-directory.md
- name: Entity Framework Core
href: /ef/core/what-is-new/ef-core-9.0/breaking-changes?toc=/dotnet/core/compatibility/toc.json&bc=/dotnet/breadcrumb/toc.json
- name: Interop
Expand Down Expand Up @@ -1678,6 +1682,8 @@ items:
items:
- name: Deprecated desktop Windows/macOS/Linux MonoVM runtime packages
href: deployment/9.0/monovm-packages.md
- name: Assembly load directory resolves through symbolic links on Windows
href: deployment/9.0/assembly-load-directory.md
- name: .NET 8
items:
- name: Host determines RID-specific assets
Expand Down Expand Up @@ -1910,6 +1916,8 @@ items:
items:
- name: .NET 10
items:
- name: .NET CLI `--interactive` defaults to `true` in user scenarios
href: sdk/10.0/dotnet-cli-interactive.md
- name: "`dotnet restore` audits transitive packages"
href: sdk/10.0/nugetaudit-transitive-packages.md
- name: Default workload configuration from 'loose manifests' to 'workload sets' mode
Expand Down
Loading