NativeAOT CLI-kommandohantering aktiverad som standard

Från och med .NET 11 aktiverar .NET SDK CLI sin NativeAOT-kompilerade snabbsökväg för kommandohantering som standard på alla plattformar. Den här sökvägen styrs av DOTNET_CLI_ENABLEAOT miljövariabeln, vars standard ändras från inaktiverad till aktiverad. Vanliga dotnet anrop, till exempel kommandoradsparsing, --version, --infooch en växande uppsättning inbyggda och externa kommandon, hanteras av en intern startpunkt som transparent faller tillbaka till det hanterade CLI för allt som inte hanteras.

Version lanserad

.NET 11 Förhandsversion 7

Tidigare beteende

Tidigare var den snabba sökvägen NativeAOT CLI inaktiverad som standard på alla plattformar. Såvida inte DOTNET_CLI_ENABLEAOT uttryckligen har angetts till ett sanningsvärde (true, , 1yeseller on), hanterades varje dotnet anrop av det hanterade CLI.

Nytt beteende

Från och med .NET 11 är den snabba sökvägen NativeAOT CLI aktiverad som standard på alla plattformar (Windows, macOS och Linux). Kommandon som stöds hanteras internt och allt som inte stöds återgår till det hanterade CLI:et. Om du vill välja bort och dirigera varje anrop till det hanterade CLI anger du DOTNET_CLI_ENABLEAOT till ett förfalskningsvärde: false, 0, noeller off.

Typ av brytande ändring

Den här ändringen är en beteendeförändring.

Orsak till ändringen

Nu när den interna kommandohanteringssökvägen har nått paritet med det hanterade CLI ger aktivering av den som standard bred verklig testning och förbättrar CLI-startprestanda för vanliga kommandon.

Den inbyggda sökvägen är utformad för att vara beteendemässigt identisk med det hanterade CLI:et och bör inte kräva någon åtgärd. Om du ser en skillnad i beteende ställer du in miljövariabeln DOTNET_CLI_ENABLEAOT=false (eller 0, noeller off) för att välja bort och dirigera alla anrop till det hanterade CLI: et. Rapportera skillnaden på https://github.com/dotnet/sdk/issues.

Berörda API:er

None.