diff --git a/.vsts-ci.yml b/.vsts-ci.yml index c8ce371dc95f..cceb8e5faab4 100644 --- a/.vsts-ci.yml +++ b/.vsts-ci.yml @@ -30,6 +30,7 @@ variables: # Helix testing requires a token when internally run. # Variables used: HelixApiAccessToken - group: DotNet-HelixApi-Access +- group: AzureDevOps-Artifact-Feeds-Pats # Allows Arcade to run a signed build by disabling post-build signing for release-branch builds or manual builds that are not running tests. - ${{ if and(eq(parameters.runTestBuild, false), or(startswith(variables['Build.SourceBranch'], 'refs/heads/release/'), startswith(variables['Build.SourceBranch'], 'refs/heads/internal/release/'), eq(variables['Build.Reason'], 'Manual'))) }}: - name: PostBuildSign @@ -68,12 +69,10 @@ extends: image: mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-2.0-fpm centosStream9: image: mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream9 - debian11Amd64: - image: mcr.microsoft.com/dotnet-buildtools/prereqs:debian-11-amd64 + debian12Amd64: + image: mcr.microsoft.com/dotnet-buildtools/prereqs:debian-12-gcc14-amd64 fedora39: image: mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-39 - ubuntu2204: - image: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04 mariner20CrossArm: image: mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-2.0-cross-arm ubuntu2204DebPkg: @@ -296,6 +295,7 @@ extends: ############### SOURCE BUILD ############### - template: /eng/common/templates-official/job/source-build.yml@self parameters: + enableInternalSources: true platform: name: Managed container: centosStream9 @@ -308,6 +308,7 @@ extends: parameters: oneESCompat: publishTaskPrefix: 1ES. + runtimeSourceProperties: /p:DotNetRuntimeSourceFeed=https://dotnetbuilds.blob.core.windows.net/internal /p:DotNetRuntimeSourceFeedKey=$(dotnetbuilds-internal-container-read-token-base64) ############### PUBLISH STAGE ############### - ${{ if and(eq(parameters.runTestBuild, false), ne(variables['Build.Reason'], 'PullRequest')) }}: diff --git a/.vsts-pr.yml b/.vsts-pr.yml index e130dc576aee..584f725feb86 100644 --- a/.vsts-pr.yml +++ b/.vsts-pr.yml @@ -20,12 +20,12 @@ resources: image: mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.19-WithNode - container: centosStream9 image: mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream9 - - container: debian11Amd64 - image: mcr.microsoft.com/dotnet-buildtools/prereqs:debian-11-amd64 + - container: debian12Amd64 + image: mcr.microsoft.com/dotnet-buildtools/prereqs:debian-12-gcc14-amd64 - container: fedora39 image: mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-39 - - container: ubuntu2204 - image: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04 + - container: ubuntu2204DebPkg + image: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-debpkg stages: ############### BUILD STAGE ############### @@ -62,6 +62,7 @@ stages: ############### SOURCE BUILD ############### - template: /eng/common/templates/job/source-build.yml parameters: + enableInternalSources: true platform: name: Managed container: centosStream9 diff --git a/CODEOWNERS b/CODEOWNERS index cab8d0026343..4c48269fd3e0 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -102,8 +102,8 @@ /test/dotnet-format.Tests @dotnet/roslyn-ide # Area: VMR & SourceBuild -/.devcontainer/ @dotnet/source-build-internal -/eng/pipelines/ @dotnet/source-build-internal @dotnet/product-construction -/eng/SourceBuild* @dotnet/source-build-internal -/src/SourceBuild/ @dotnet/source-build-internal @dotnet/product-construction +/.devcontainer/ @dotnet/source-build +/eng/pipelines/ @dotnet/source-build @dotnet/product-construction +/eng/SourceBuild* @dotnet/source-build +/src/SourceBuild/ @dotnet/source-build @dotnet/product-construction /src/VirtualMonoRepo/ @dotnet/product-construction diff --git a/documentation/manpages/sdk/dotnet-add-package.1 b/documentation/manpages/sdk/dotnet-add-package.1 index 56296ebb2602..3288c7261a49 100644 --- a/documentation/manpages/sdk/dotnet-add-package.1 +++ b/documentation/manpages/sdk/dotnet-add-package.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-add-package" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-add-package" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet add package .PP diff --git a/documentation/manpages/sdk/dotnet-add-reference.1 b/documentation/manpages/sdk/dotnet-add-reference.1 index abbd594ffd25..97255d5e114a 100644 --- a/documentation/manpages/sdk/dotnet-add-reference.1 +++ b/documentation/manpages/sdk/dotnet-add-reference.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-add-reference" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-add-reference" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet add reference .PP @@ -55,7 +55,7 @@ But you can do that by editing your \f[I].csproj\f[R] file and adding markup sim \f[C] - \[dq].\[rs]MyDLLFolder\[rs]MyAssembly.dll + .\[rs]MyDLLFolder\[rs]MyAssembly.dll \f[R] diff --git a/documentation/manpages/sdk/dotnet-build-server.1 b/documentation/manpages/sdk/dotnet-build-server.1 index 054dbb05a50f..ab1714b3cca2 100644 --- a/documentation/manpages/sdk/dotnet-build-server.1 +++ b/documentation/manpages/sdk/dotnet-build-server.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-build-server" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-build-server" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet build-server .PP diff --git a/documentation/manpages/sdk/dotnet-build.1 b/documentation/manpages/sdk/dotnet-build.1 index ec60b6207728..f6878f38c329 100644 --- a/documentation/manpages/sdk/dotnet-build.1 +++ b/documentation/manpages/sdk/dotnet-build.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-build" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-build" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet build .PP @@ -27,6 +27,7 @@ dotnet-build - Builds a project and all of its dependencies. .nf \f[C] dotnet build [|] [-a|--arch ] + [--artifacts-path ] [-c|--configuration ] [-f|--framework ] [--disable-build-servers] [--force] [--interactive] [--no-dependencies] [--no-incremental] @@ -35,7 +36,7 @@ dotnet build [|] [-a|--arch ] [-p|--property:=] [-r|--runtime ] [--self-contained [true|false]] [--source ] - [--tl [auto|on|off]] [--use-current-runtime, --ucr [true|false]] + [--tl:[auto|on|off]] [--use-current-runtime, --ucr [true|false]] [-v|--verbosity ] [--version-suffix ] dotnet build -h|--help @@ -132,6 +133,14 @@ If you use this option, don\[cq]t use the \f[V]-r|--runtime\f[R] option. Available since .NET 6 Preview 7. .RE .IP \[bu] 2 +\f[B]\f[VB]--artifacts-path \f[B]\f[R] +.RS 2 +.PP +All build output files from the executed command will go in subfolders under the specified path, separated by project. +For more information see Artifacts Output Layout. +Available since .NET 8 SDK. +.RE +.IP \[bu] 2 \f[B]\f[VB]-c|--configuration \f[B]\f[R] .RS 2 .PP @@ -273,7 +282,7 @@ Available since .NET 6. The URI of the NuGet package source to use during the restore operation. .RE .IP \[bu] 2 -\f[B]\f[VB]--tl [auto|on|off]\f[B]\f[R] +\f[B]\f[VB]--tl:[auto|on|off]\f[B]\f[R] .RS 2 .PP Specifies whether the \f[I]terminal logger\f[R] should be used for the build output. @@ -286,17 +295,17 @@ The terminal logger shows you the restore phase followed by the build phase. During each phase, the currently building projects appear at the bottom of the terminal. Each project that\[cq]s building outputs both the MSBuild target currently being built and the amount of time spent on that target. You can search this information to learn more about the build. -When a project is finished building, a single \[lq]build completed\[rq] section is written for that captures: +When a project is finished building, a single \[lq]build completed\[rq] section is written that captures: .IP \[bu] 2 -The name of the built project +The name of the built project. .IP \[bu] 2 -The target framework (if multi-targeted) +The target framework (if multi-targeted). .IP \[bu] 2 -The status of that build +The status of that build. .IP \[bu] 2 -The primary output of that build (which is hyperlinked) +The primary output of that build (which is hyperlinked). .IP \[bu] 2 -Any diagnostics generated for that project +Any diagnostics generated for that project. .PP This option is available starting in .NET 8. .RE @@ -349,12 +358,12 @@ dotnet build --configuration Release .fi .RE .IP \[bu] 2 -Build a project and its dependencies for a specific runtime (in this example, Ubuntu 18.04): +Build a project and its dependencies for a specific runtime (in this example, Linux): .RS 2 .IP .nf \f[C] -dotnet build --runtime ubuntu.18.04-x64 +dotnet build --runtime linux-x64 \f[R] .fi .RE diff --git a/documentation/manpages/sdk/dotnet-clean.1 b/documentation/manpages/sdk/dotnet-clean.1 index 9c24fa04623a..1d2f8f09a3c5 100644 --- a/documentation/manpages/sdk/dotnet-clean.1 +++ b/documentation/manpages/sdk/dotnet-clean.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-clean" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-clean" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet clean .PP @@ -26,10 +26,12 @@ dotnet-clean - Cleans the output of a project. .IP .nf \f[C] -dotnet clean [|] [-c|--configuration ] +dotnet clean [|] [--artifacts-path ] + [-c|--configuration ] [-f|--framework ] [--interactive] [--nologo] [-o|--output ] - [-r|--runtime ] [-v|--verbosity ] + [-r|--runtime ] [--tl:[auto|on|off]] + [-v|--verbosity ] dotnet clean -h|--help \f[R] @@ -48,6 +50,14 @@ The MSBuild project or solution to clean. If a project or solution file is not specified, MSBuild searches the current working directory for a file that has a file extension that ends in \f[I]proj\f[R] or \f[I]sln\f[R], and uses that file. .SH OPTIONS .IP \[bu] 2 +\f[B]\f[VB]--artifacts-path \f[B]\f[R] +.RS 2 +.PP +All build output files from the executed command will go in subfolders under the specified path, separated by project. +For more information see Artifacts Output Layout. +Available since .NET 8 SDK. +.RE +.IP \[bu] 2 \f[B]\f[VB]-c|--configuration \f[B]\f[R] .RS 2 .PP @@ -106,6 +116,34 @@ Cleans the output folder of the specified runtime. This is used when a self-contained deployment was created. .RE .IP \[bu] 2 +\f[B]\f[VB]--tl:[auto|on|off]\f[B]\f[R] +.RS 2 +.PP +Specifies whether the \f[I]terminal logger\f[R] should be used for the build output. +The default is \f[V]auto\f[R], which first verifies the environment before enabling terminal logging. +The environment check verifies that the terminal is capable of using modern output features and isn\[cq]t using a redirected standard output before enabling the new logger. +\f[V]on\f[R] skips the environment check and enables terminal logging. +\f[V]off\f[R] skips the environment check and uses the default console logger. +.PP +The terminal logger shows you the restore phase followed by the build phase. +During each phase, the currently building projects appear at the bottom of the terminal. +Each project that\[cq]s building outputs both the MSBuild target currently being built and the amount of time spent on that target. +You can search this information to learn more about the build. +When a project is finished building, a single \[lq]build completed\[rq] section is written that captures: +.IP \[bu] 2 +The name of the built project. +.IP \[bu] 2 +The target framework (if multi-targeted). +.IP \[bu] 2 +The status of that build. +.IP \[bu] 2 +The primary output of that build (which is hyperlinked). +.IP \[bu] 2 +Any diagnostics generated for that project. +.PP +This option is available starting in .NET 8. +.RE +.IP \[bu] 2 \f[B]\f[VB]-v|--verbosity \f[B]\f[R] .RS 2 .PP diff --git a/documentation/manpages/sdk/dotnet-dev-certs.1 b/documentation/manpages/sdk/dotnet-dev-certs.1 index 1c2b92e4aa96..d061cc94cdf6 100644 --- a/documentation/manpages/sdk/dotnet-dev-certs.1 +++ b/documentation/manpages/sdk/dotnet-dev-certs.1 @@ -15,7 +15,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-dev-certs" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-dev-certs" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet dev-certs .PP diff --git a/documentation/manpages/sdk/dotnet-environment-variables.7 b/documentation/manpages/sdk/dotnet-environment-variables.7 index b5ce82b8886e..cf9140fe4d57 100644 --- a/documentation/manpages/sdk/dotnet-environment-variables.7 +++ b/documentation/manpages/sdk/dotnet-environment-variables.7 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-environment-variables" "7" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-environment-variables" "7" "2024-10-02" "" ".NET Documentation" .hy .SH NAME .PP @@ -240,8 +240,20 @@ Defaults to 0. See the Diagnostic Port documentation for more information. .SS \f[V]DOTNET_EnableDiagnostics\f[R] .PP -When set to \f[V]1\f[R], enables debugging, profiling, and other diagnostics via the Diagnostic Port. -Defaults to 1. +When set to \f[V]0\f[R], disables debugging, profiling, and other diagnostics via the Diagnostic Port and can\[cq]t be overridden by other diagnostics settings. +Defaults to \f[V]1\f[R]. +.SS \f[V]DOTNET_EnableDiagnostics_IPC\f[R] +.PP +Starting with .NET 8, when set to \f[V]0\f[R], disables the Diagnostic Port and can\[cq]t be overridden by other diagnostics settings. +Defaults to \f[V]1\f[R]. +.SS \f[V]DOTNET_EnableDiagnostics_Debugger\f[R] +.PP +Starting with .NET 8, when set to \f[V]0\f[R], disables debugging and can\[cq]t be overridden by other diagnostics settings. +Defaults to \f[V]1\f[R]. +.SS \f[V]DOTNET_EnableDiagnostics_Profiler\f[R] +.PP +Starting with .NET 8, when set to \f[V]0\f[R], disables profiling and can\[cq]t be overridden by other diagnostics settings. +Defaults to \f[V]1\f[R]. .SS EventPipe variables .PP See EventPipe environment variables for more information. @@ -253,11 +265,12 @@ See EventPipe environment variables for more information. \f[V]DOTNET_EventPipeOutputStreaming\f[R]: When set to \f[V]1\f[R], enables streaming to the output file while the app is running. By default trace information is accumulated in a circular buffer and the contents are written at app shutdown. .SS .NET SDK and CLI environment variables -.SS \f[V]DOTNET_ROOT\f[R], \f[V]DOTNET_ROOT(x86)\f[R] +.SS \f[V]DOTNET_ROOT\f[R], \f[V]DOTNET_ROOT(x86)\f[R], \f[V]DOTNET_ROOT_X86\f[R], \f[V]DOTNET_ROOT_X64\f[R] .PP Specifies the location of the .NET runtimes, if they are not installed in the default location. The default location on Windows is \f[V]C:\[rs]Program Files\[rs]dotnet\f[R]. The default location on macOS is \f[V]/usr/local/share/dotnet\f[R]. +The default location for the x64 runtimes on an arm64 OS is under an x64 subfolder (so \f[V]C:\[rs]Program Files\[rs]dotnet\[rs]x64\f[R] on windows and \f[V]/usr/local/share/dotnet/x64\f[R] on macOS. The default location on Linux varies depending on distro and installment method. The default location on Ubuntu 22.04 is \f[V]/usr/share/dotnet\f[R] (when installed from \f[V]packages.microsoft.com\f[R]) or \f[V]/usr/lib/dotnet\f[R] (when installed from Jammy feed). For more information, see the following resources: @@ -270,6 +283,7 @@ GitHub issue dotnet/runtime#79237 (https://github.com/dotnet/runtime/issues/7923 .PP This environment variable is used only when running apps via generated executables (apphosts). \f[V]DOTNET_ROOT(x86)\f[R] is used instead when running a 32-bit executable on a 64-bit OS. +\f[V]DOTNET_ROOT_X64\f[R] is used instead when running a 64-bit executable on an ARM64 OS. .SS \f[V]DOTNET_HOST_PATH\f[R] .PP Specifies the absolute path to a \f[V]dotnet\f[R] host (\f[V]dotnet.exe\f[R] on Windows, \f[V]dotnet\f[R] on Linux and macOS) that was used to launch the currently-running \f[V]dotnet\f[R] process. @@ -286,6 +300,83 @@ otherwise, rely on \f[V]dotnet\f[R] via the system\[cq]s \f[V]PATH\f[R] \f[V]DOTNET_HOST_PATH\f[R] is not a general solution for locating the \f[V]dotnet\f[R] host. It is only intended to be used by tools that are invoked by the .NET SDK. .RE +.SS \f[V]DOTNET_LAUNCH_PROFILE\f[R] +.PP +The dotnet run command sets this variable to the selected launch profile. +.PP +Given the following \f[I]launchSettings.json\f[R] file: +.IP +.nf +\f[C] +{ + \[dq]profiles\[dq]: { + \[dq]First\[dq]: { + \[dq]commandName\[dq]: \[dq]Project\[dq], + }, + \[dq]Second\[dq]: { + \[dq]commandName\[dq]: \[dq]Project\[dq], + } + } +} +\f[R] +.fi +.PP +And the following \f[I]Program.cs\f[R] file: +.IP +.nf +\f[C] +var value = Environment.GetEnvironmentVariable(\[dq]DOTNET_LAUNCH_PROFILE\[dq]); +Console.WriteLine($\[dq]DOTNET_LAUNCH_PROFILE={value}\[dq]); +\f[R] +.fi +.PP +The following scenarios produce the output shown: +.IP \[bu] 2 +Launch profile specified and exists +.RS 2 +.IP +.nf +\f[C] +$ dotnet run --launch-profile First +DOTNET_LAUNCH_PROFILE=First +\f[R] +.fi +.RE +.IP \[bu] 2 +Launch profile not specified, first one selected +.RS 2 +.IP +.nf +\f[C] +$ dotnet run +DOTNET_LAUNCH_PROFILE=First +\f[R] +.fi +.RE +.IP \[bu] 2 +Launch profile specified but does not exist +.RS 2 +.IP +.nf +\f[C] +$ dotnet run --launch-profile Third +The launch profile \[dq]Third\[dq] could not be applied. +A launch profile with the name \[aq]Third\[aq] doesn\[aq]t exist. +DOTNET_LAUNCH_PROFILE= +\f[R] +.fi +.RE +.IP \[bu] 2 +Launch with no profile +.RS 2 +.IP +.nf +\f[C] +$ dotnet run --no-launch-profile +DOTNET_LAUNCH_PROFILE= +\f[R] +.fi +.RE .SS \f[V]NUGET_PACKAGES\f[R] .PP The global packages folder. @@ -317,11 +408,16 @@ To not add global tools to the path, set to \f[V]0\f[R], \f[V]false\f[R], or \f[ .PP Specifies whether data about the .NET tools usage is collected and sent to Microsoft. Set to \f[V]true\f[R] to opt-out of the telemetry feature (values \f[V]true\f[R], \f[V]1\f[R], or \f[V]yes\f[R] accepted). -Otherwise, set to \f[V]false\f[R] to opt into the telemetry features (values \f[V]false\f[R], \f[V]0\f[R], or \f[V]no\f[R] accepted). +Otherwise, set to \f[V]false\f[R] to opt in to the telemetry features (values \f[V]false\f[R], \f[V]0\f[R], or \f[V]no\f[R] accepted). If not set, the default is \f[V]false\f[R] and the telemetry feature is active. .SS \f[V]DOTNET_SKIP_FIRST_TIME_EXPERIENCE\f[R] .PP If \f[V]DOTNET_SKIP_FIRST_TIME_EXPERIENCE\f[R] is set to \f[V]true\f[R], the \f[V]NuGetFallbackFolder\f[R] won\[cq]t be expanded to disk and a shorter welcome message and telemetry notice will be shown. +.RS +.PP +This environment variable is no longer supported in .NET Core 3.0 and later. +Use \f[V]DOTNET_NOLOGO\f[R] as a replacement. +.RE .SS \f[V]DOTNET_MULTILEVEL_LOOKUP\f[R] .PP Specifies whether the .NET runtime, shared framework, or SDK are resolved from the global location. @@ -382,6 +478,16 @@ List of assemblies to load and execute startup hooks from. Specifies a directory to which a single-file application is extracted before it is executed. .PP For more information, see Single-file executables. +.SS \f[V]DOTNET_CLI_HOME\f[R] +.PP +Specifies the location that supporting files for .NET CLI commands should be written to. +For example: +.IP \[bu] 2 +User-writable paths for workload packs, manifests, and other supporting data. +.IP \[bu] 2 +First-run sentinel/lock files for aspects of the .NET CLI\[cq]s first-run migrations and notification experiences. +.IP \[bu] 2 +The default .NET local tool installation location. .SS \f[V]DOTNET_CLI_CONTEXT_*\f[R] .IP \[bu] 2 \f[V]DOTNET_CLI_CONTEXT_VERBOSE\f[R]: To enable a verbose context, set to \f[V]true\f[R]. diff --git a/documentation/manpages/sdk/dotnet-format.1 b/documentation/manpages/sdk/dotnet-format.1 index cb28edeca4f8..de2870a41082 100644 --- a/documentation/manpages/sdk/dotnet-format.1 +++ b/documentation/manpages/sdk/dotnet-format.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-format" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-format" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet format .PP @@ -26,14 +26,14 @@ dotnet-format - Formats code to match \f[V]editorconfig\f[R] settings. .IP .nf \f[C] -dotnet format [options] [] +dotnet format [] [command] [options] dotnet format -h|--help \f[R] .fi .SH DESCRIPTION .PP -\f[V]dotnet format\f[R] is a code formatter that applies style preferences to a project or solution. +\f[V]dotnet format\f[R] is a code formatter that applies style preferences and static analysis recommendations to a project or solution. Preferences will be read from an \f[I].editorconfig\f[R] file, if present, otherwise a default set of preferences will be used. For more information, see the EditorConfig documentation. .SH ARGUMENTS @@ -127,7 +127,7 @@ Shows help and usage information \f[V]dotnet format whitespace\f[R] - Formats code to match \f[V]editorconfig\f[R] settings for whitespace. .SH DESCRIPTION .PP -The \f[V]dotnet format whitespace\f[R] subcommand will only run formatting rules associated with whitespace formatting. +The \f[V]dotnet format whitespace\f[R] subcommand only runs formatting rules associated with whitespace formatting. For a complete list of possible formatting options that you can specify in your \f[I].editorconfig\f[R] file, see the C# formatting options. .SH OPTIONS .IP \[bu] 2 @@ -141,16 +141,16 @@ Treat the \f[V]\f[R] argument as a path to a simple folder o \f[V]dotnet format style\f[R] - Formats code to match EditorConfig settings for code style. .SH DESCRIPTION .PP -The \f[V]dotnet format style\f[R] subcommand will only run formatting rule associated with code style formatting. +The \f[V]dotnet format style\f[R] subcommand only runs formatting rules associated with code style formatting. For a complete list of formatting options that you can specify in your \f[V]editorconfig\f[R] file, see Code style rules. .SH OPTIONS .IP \[bu] 2 \f[B]\f[VB]--diagnostics \f[B]\f[R] .RS 2 .PP -A space-separated list of diagnostic IDs to use as a filter when fixing code style or third-party issues. +A space-separated list of diagnostic IDs to use as a filter when fixing code style issues. Default value is whichever IDs are listed in the \f[I].editorconfig\f[R] file. -For a list of built-in analyzer rule IDs that you can specify, see the list of IDs for code-analysis style rules. +For a list of built-in code style analyzer rule IDs that you can specify, see the list of IDs for code-analysis style rules. .RE .IP \[bu] 2 \f[B]\f[VB]--severity\f[B]\f[R] @@ -162,19 +162,20 @@ The default value is \f[V]warn\f[R] .RE .SS Analyzers .PP -\f[V]dotnet format analyzers\f[R] - Formats code to match \f[V]editorconfig\f[R] settings for analyzers. +\f[V]dotnet format analyzers\f[R] - Formats code to match \f[V]editorconfig\f[R] settings for analyzers (excluding code style rules). .SH DESCRIPTION .PP -The \f[V]dotnet format analyzers\f[R] subcommand will only run formatting rule associated with analyzers. -For a list of analyzer rules that you can specify in your \f[V]editorconfig\f[R] file, see Code style rules. +The \f[V]dotnet format analyzers\f[R] subcommand only runs formatting rules associated with analyzers. +For a list of analyzer rules that you can specify in your \f[V]editorconfig\f[R] file, see Quality rules. .SH OPTIONS .IP \[bu] 2 \f[B]\f[VB]--diagnostics \f[B]\f[R] .RS 2 .PP -A space-separated list of diagnostic IDs to use as a filter when fixing code style or third-party issues. +A space-separated list of diagnostic IDs to use as a filter when fixing non code style issues. Default value is whichever IDs are listed in the \f[I].editorconfig\f[R] file. -For a list of built-in analyzer rule IDs that you can specify, see the list of IDs for code-analysis style rules. +For a list of built-in analyzer rule IDs that you can specify, see the list of IDs for quality rules. +For third-party analyzers refer to their documentation. .RE .IP \[bu] 2 \f[B]\f[VB]--severity\f[B]\f[R] @@ -225,3 +226,43 @@ dotnet format --include ./src/ ./tests/ --exclude ./src/submodule-a/ \f[R] .fi .RE +.IP \[bu] 2 +Fix a specific \f[B]code style\f[R] issue: +.RS 2 +.IP +.nf +\f[C] +dotnet format style --diagnostics IDE0005 --severity info +\f[R] +.fi +.RE +.IP \[bu] 2 +Fix all \f[B]code style\f[R] issues that have severity \f[V]info\f[R], \f[V]warning\f[R] or \f[V]error\f[R]: +.RS 2 +.IP +.nf +\f[C] +dotnet format style --severity info +\f[R] +.fi +.RE +.IP \[bu] 2 +Fix a specific (non code style) analyzer issue: +.RS 2 +.IP +.nf +\f[C] +dotnet format analyzers --diagnostics CA1831 --severity warn +\f[R] +.fi +.RE +.IP \[bu] 2 +Fix all non code style issues that have severity \f[V]info\f[R], \f[V]warning\f[R] or \f[V]error\f[R]: +.RS 2 +.IP +.nf +\f[C] +dotnet format analyzers --severity info +\f[R] +.fi +.RE diff --git a/documentation/manpages/sdk/dotnet-help.1 b/documentation/manpages/sdk/dotnet-help.1 index 0bd7df09968d..dda34df0732e 100644 --- a/documentation/manpages/sdk/dotnet-help.1 +++ b/documentation/manpages/sdk/dotnet-help.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-help" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-help" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet help reference .PP diff --git a/documentation/manpages/sdk/dotnet-list-package.1 b/documentation/manpages/sdk/dotnet-list-package.1 index 2e3e95e5c22b..875df968de55 100644 --- a/documentation/manpages/sdk/dotnet-list-package.1 +++ b/documentation/manpages/sdk/dotnet-list-package.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-list-package" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-list-package" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet list package .PP @@ -28,7 +28,7 @@ dotnet-list-package - Lists the package references for a project or solution. \f[C] dotnet list [|] package [--config ] [--deprecated] - [--framework ] [--highest-minor] [--highest-patch] + [-f|--framework ] [--highest-minor] [--highest-patch] [--include-prerelease] [--include-transitive] [--interactive] [--outdated] [--source ] [-v|--verbosity ] [--vulnerable] @@ -114,12 +114,13 @@ Requires the \f[V]--outdated\f[R] option. Displays packages that have been deprecated. .RE .IP \[bu] 2 -\f[B]\f[VB]--framework \f[B]\f[R] +\f[B]\f[VB]-f|--framework \f[B]\f[R] .RS 2 .PP Displays only the packages applicable for the specified target framework. To specify multiple frameworks, repeat the option multiple times. For example: \f[V]--framework net6.0 --framework netstandard2.0\f[R]. +The short form of the option (\f[V]-f\f[R]) is available starting in .NET 9 SDK. .RE .IP \[bu] 2 \f[B]\f[VB]-?|-h|--help\f[B]\f[R] diff --git a/documentation/manpages/sdk/dotnet-list-reference.1 b/documentation/manpages/sdk/dotnet-list-reference.1 index 800d8ca3927a..9730e8990125 100644 --- a/documentation/manpages/sdk/dotnet-list-reference.1 +++ b/documentation/manpages/sdk/dotnet-list-reference.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-list-reference" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-list-reference" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet list reference .PP diff --git a/documentation/manpages/sdk/dotnet-migrate.1 b/documentation/manpages/sdk/dotnet-migrate.1 index 71f8a11c471b..488833f8c5e6 100644 --- a/documentation/manpages/sdk/dotnet-migrate.1 +++ b/documentation/manpages/sdk/dotnet-migrate.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-migrate" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-migrate" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet migrate .PP diff --git a/documentation/manpages/sdk/dotnet-msbuild.1 b/documentation/manpages/sdk/dotnet-msbuild.1 index 3a152a3ac02e..3961ccf06801 100644 --- a/documentation/manpages/sdk/dotnet-msbuild.1 +++ b/documentation/manpages/sdk/dotnet-msbuild.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-msbuild" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-msbuild" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet msbuild .PP @@ -64,12 +64,12 @@ dotnet msbuild -property:Configuration=Release .fi .RE .IP \[bu] 2 -Run the publish target and publish for the \f[V]osx.10.11-x64\f[R] RID: +Run the publish target and publish for the \f[V]osx-x64\f[R] RID: .RS 2 .IP .nf \f[C] -dotnet msbuild -target:Publish -property:RuntimeIdentifiers=osx.10.11-x64 +dotnet msbuild -target:Publish -property:RuntimeIdentifiers=osx-x64 \f[R] .fi .RE diff --git a/documentation/manpages/sdk/dotnet-new-details.1 b/documentation/manpages/sdk/dotnet-new-details.1 index 6f1b7be169f3..4d26bc738627 100644 --- a/documentation/manpages/sdk/dotnet-new-details.1 +++ b/documentation/manpages/sdk/dotnet-new-details.1 @@ -14,11 +14,11 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-new-details" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-new-details" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet new details .PP -\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET 8 preview 6 +\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET 8 .SH NAME .PP dotnet-new-details - Displays template package metadata. diff --git a/documentation/manpages/sdk/dotnet-new-install.1 b/documentation/manpages/sdk/dotnet-new-install.1 index e62824844716..07172f5ced35 100644 --- a/documentation/manpages/sdk/dotnet-new-install.1 +++ b/documentation/manpages/sdk/dotnet-new-install.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-new-install" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-new-install" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet new install .PP diff --git a/documentation/manpages/sdk/dotnet-new-list.1 b/documentation/manpages/sdk/dotnet-new-list.1 index f0948edf29c6..0fdd0d18d463 100644 --- a/documentation/manpages/sdk/dotnet-new-list.1 +++ b/documentation/manpages/sdk/dotnet-new-list.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-new-list" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-new-list" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet new list .PP diff --git a/documentation/manpages/sdk/dotnet-new-sdk-templates.7 b/documentation/manpages/sdk/dotnet-new-sdk-templates.7 index 9fd5e19e0fdb..19fad24c72c3 100644 --- a/documentation/manpages/sdk/dotnet-new-sdk-templates.7 +++ b/documentation/manpages/sdk/dotnet-new-sdk-templates.7 @@ -15,7 +15,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-new-sdk-templates" "7" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-new-sdk-templates" "7" "2024-10-02" "" ".NET Documentation" .hy .SH NAME .PP @@ -238,50 +238,28 @@ T}@T{ 2.0 T} T{ -Blazor Server App +Blazor Web App T}@T{ -\f[V]blazorserver\f[R] +\f[V]blazor\f[R] T}@T{ [C#] T}@T{ Web/Blazor T}@T{ -3.0 +8.0.100 T} T{ -Blazor Server App Empty -T}@T{ -\f[V]blazorserver-empty\f[R] -T}@T{ -[C#] -T}@T{ -Web/Blazor -T}@T{ -7.0 -T} -T{ -Blazor WebAssembly App +Blazor WebAssembly Standalone App T}@T{ \f[V]blazorwasm\f[R] T}@T{ [C#] T}@T{ -Web/Blazor/WebAssembly +Web/Blazor/WebAssembly/PWA T}@T{ 3.1.300 T} T{ -Blazor WebAssembly App Empty -T}@T{ -\f[V]blazorwasm-empty\f[R] -T}@T{ -[C#] -T}@T{ -Web/Blazor/WebAssembly -T}@T{ -7.0 -T} -T{ ASP.NET Core Empty T}@T{ \f[V]web\f[R] @@ -315,28 +293,6 @@ T}@T{ 2.2, 2.0 T} T{ -ASP.NET Core with Angular -T}@T{ -\f[V]angular\f[R] -T}@T{ -[C#] -T}@T{ -Web/MVC/SPA -T}@T{ -2.0 -T} -T{ -ASP.NET Core with React.js -T}@T{ -\f[V]react\f[R] -T}@T{ -[C#] -T}@T{ -Web/MVC/SPA -T}@T{ -2.0 -T} -T{ Razor Class Library T}@T{ \f[V]razorclasslib\f[R] @@ -370,6 +326,17 @@ T}@T{ 8.0 T} T{ +ASP.NET Core API controller +T}@T{ +\f[V]apicontroller\f[R] +T}@T{ +[C#] +T}@T{ +Web/ASP.NET +T}@T{ +8.0 +T} +T{ ASP.NET Core gRPC Service T}@T{ \f[V]grpc\f[R] @@ -453,7 +420,7 @@ T} T{ EditorConfig file T}@T{ -\f[V]editorconfig\f[R](#editorconfig) +\f[V]editorconfig\f[R] T}@T{ T}@T{ Config @@ -461,6 +428,81 @@ T}@T{ 6.0 T} .TE +.PP +The following table shows templates that have been discontinued and no longer come pre-installed with the .NET SDK. +Click on the short name link to see the specific template options. +.PP +.TS +tab(@); +l l l l l. +T{ +Templates +T}@T{ +Short name +T}@T{ +Language +T}@T{ +Tags +T}@T{ +Discontinued since +T} +_ +T{ +ASP.NET Core with Angular +T}@T{ +\f[V]angular\f[R] +T}@T{ +[C#] +T}@T{ +Web/MVC/SPA +T}@T{ +8.0 +T} +T{ +ASP.NET Core with React.js +T}@T{ +\f[V]react\f[R] +T}@T{ +[C#] +T}@T{ +Web/MVC/SPA +T}@T{ +8.0 +T} +T{ +Blazor Server App +T}@T{ +\f[V]blazorserver\f[R] +T}@T{ +[C#] +T}@T{ +Web/Blazor +T}@T{ +8.0 +T} +T{ +Blazor Server App Empty +T}@T{ +\f[V]blazorserver-empty\f[R] +T}@T{ +[C#] +T}@T{ +Web/Blazor +T}@T{ +8.0 +T} +T{ +Blazor WebAssembly App Empty +T}@T{ +\f[V]blazorwasm-empty\f[R] +T}@T{ +[C#] +T}@T{ +Web/Blazor/WebAssembly +T}@T{ +8.0 +T} +.TE .SS Template options .PP Each template may have additional options available. @@ -488,6 +530,11 @@ Default value T} _ T{ +8.0 +T}@T{ +\f[V]net8.0\f[R] +T} +T{ 7.0 T}@T{ \f[V]net7.0\f[R] @@ -549,8 +596,8 @@ Available only for C#. .RS 2 .PP Specifies the framework to target. -Values: \f[V]net7.0\f[R], \f[V]net6.0\f[R], or \f[V]netcoreapp3.1\f[R] to create a .NET Class Library or \f[V]netstandard2.1\f[R] or \f[V]netstandard2.0\f[R] to create a .NET Standard Class Library. -The default value for .NET SDK 7.0.x is \f[V]net7.0\f[R]. +Values: \f[V]net8.0\f[R], \f[V]net7.0\f[R], or \f[V]net6.0\f[R] to create a .NET Class Library, or \f[V]netstandard2.1\f[R] or \f[V]netstandard2.0\f[R] to create a .NET Standard Class Library. +The default value for .NET SDK 8.0.x is \f[V]net8.0\f[R]. .PP To create a project that targets a framework earlier than the SDK that you\[cq]re using, see \f[V]--framework\f[R] for \f[V]console\f[R] projects earlier in this article. .RE @@ -579,7 +626,7 @@ Doesn\[cq]t execute an implicit restore during project creation. .RS 2 .PP Specifies the framework to target. -For the .NET 6 SDK, the default value is \f[V]net6.0\f[R]. +For the .NET 8 SDK, the default value is \f[V]net8.0\f[R]. Available since .NET Core 3.1 SDK. .RE .IP \[bu] 2 @@ -623,7 +670,7 @@ Doesn\[cq]t execute an implicit restore during project creation. .RS 2 .PP Specifies the framework to target. -The default value for .NET 7 SDK is \f[V]net7.0\f[R]. +The default value for .NET 8 SDK is \f[V]net8.0\f[R]. Available since .NET Core 3.1 SDK. .PP To create a project that targets a framework earlier than the SDK that you\[cq]re using, see \f[V]--framework\f[R] for \f[V]console\f[R] projects earlier in this article. @@ -670,6 +717,16 @@ Default value T} _ T{ +8.0 +T}@T{ +\f[V]net8.0\f[R] +T} +T{ +7.0 +T}@T{ +\f[V]net7.0\f[R] +T} +T{ 6.0 T}@T{ \f[V]net6.0\f[R] @@ -725,6 +782,16 @@ Default value T} _ T{ +8.0 +T}@T{ +\f[V]net8.0\f[R] +T} +T{ +7.0 +T}@T{ +\f[V]net7.0\f[R] +T} +T{ 6.0 T}@T{ \f[V]net6.0\f[R] @@ -788,6 +855,8 @@ The default value is \f[V]MyApp.Namespace\f[R]. .PP * * * * * .SS \f[V]blazorserver\f[R] +.PP +\f[B]Discontinued since .NET 8 SDK.\f[R] .IP \[bu] 2 \f[B]\f[VB]-au|--auth \f[B]\f[R] .RS 2 @@ -802,6 +871,7 @@ The possible values are: \f[V]IndividualB2C\f[R] - Individual authentication with Azure AD B2C. .IP \[bu] 2 \f[V]SingleOrg\f[R] - Organizational authentication for a single tenant. +Entra External ID tenants also use \f[V]SingleOrg\f[R]. .IP \[bu] 2 \f[V]MultiOrg\f[R] - Organizational authentication for multiple tenants. .IP \[bu] 2 @@ -930,6 +1000,89 @@ If specified, an explicit \f[V]Program\f[R] class and \f[V]Main\f[R] method will Available since .NET SDK 6.0.300. Default value: \f[V]false\f[R]. .RE +.PP + * * * * * +.SS \f[V]blazor\f[R] +.IP \[bu] 2 +\f[B]\f[VB]-f|--framework \f[B]\f[R] +.RS 2 +.PP +Specifies the framework to target. +.PP +This template is available for .NET 8 or later. +.RE +.IP \[bu] 2 +\f[B]\f[VB]--no-restore\f[B]\f[R] +.RS 2 +.PP +Doesn\[cq]t execute an implicit restore during project creation. +.RE +.IP \[bu] 2 +\f[B]\f[VB]--exclude-launch-settings\f[B]\f[R] +.RS 2 +.PP +Excludes \f[I]launchSettings.json\f[R] from the generated app. +.RE +.IP \[bu] 2 +\f[B]\f[VB]-int|--interactivity \f[B]\f[R] +.RS 2 +.PP +Specifies which interactive render mode to use for interactive components. +The possible values are: +.IP \[bu] 2 +\f[V]None\f[R] - No interactivity (static server-side rendering only). +.IP \[bu] 2 +\f[V]Server\f[R] - (Default) Runs the app on the server with interactive server-side rendering. +.IP \[bu] 2 +\f[V]WebAssembly\f[R] - Runs the app using client-side rendering in the browser with WebAssembly. +.IP \[bu] 2 +\f[V]Auto\f[R] - Uses interactive server-side rendering while downloading the Blazor bundle and activating the Blazor runtime on the client, then uses client-side rendering with WebAssembly. +.RE +.IP \[bu] 2 +\f[B]\f[VB]--empty\f[B]\f[R] +.RS 2 +.PP +Omits sample pages and styling that demonstrate basic usage patterns. +.RE +.IP \[bu] 2 +\f[B]\f[VB]-au|--auth \f[B]\f[R] +.RS 2 +.PP +The type of authentication to use. +The possible values are: +.IP \[bu] 2 +\f[V]None\f[R] - No authentication (Default). +.IP \[bu] 2 +\f[V]Individual\f[R] - Individual authentication. +.RE +.IP \[bu] 2 +\f[B]\f[VB]-uld|--use-local-db\f[B]\f[R] +.RS 2 +.PP +Specifies LocalDB should be used instead of SQLite. +Only applies to \f[V]Individual\f[R] authentication. +.RE +.IP \[bu] 2 +\f[B]\f[VB]-ai|--all-interactive\f[B]\f[R] +.RS 2 +.PP +Makes every page interactive by applying an interactive render mode at the top level. +If \f[V]false\f[R], pages use static server-side rendering by default and can be marked interactive on a per-page or per-component basis. +This option is only effective if the \f[V]-i|--interactivity\f[R] option isn\[cq]t set to \f[V]None\f[R]. +.RE +.IP \[bu] 2 +\f[B]\f[VB]--no-https\f[B]\f[R] +.RS 2 +.PP +Turns off HTTPS. +This option only applies if \f[V]Individual\f[R] isn\[cq]t chosen for the \f[V]-au|--auth\f[R] option. +.RE +.IP \[bu] 2 +\f[B]\f[VB]--use-program-main\f[B]\f[R] +.RS 2 +.PP +If specified, an explicit \f[V]Program\f[R] class and \f[V]Main\f[R] method is generated instead of top-level statements. +.RE .PP * * * * * .SS \f[V]blazorwasm\f[R] @@ -951,6 +1104,11 @@ Default value T} _ T{ +8.0 +T}@T{ +\f[V]net8.0\f[R] +T} +T{ 7.0 T}@T{ \f[V]net7.0\f[R] @@ -1000,6 +1158,7 @@ The possible values are: \f[V]IndividualB2C\f[R] - Individual authentication with Azure AD B2C. .IP \[bu] 2 \f[V]SingleOrg\f[R] - Organizational authentication for a single tenant. +Entra External ID tenants also use SingleOrg. .RE .IP \[bu] 2 \f[B]\f[VB]--authority \f[B]\f[R] @@ -1185,6 +1344,16 @@ Default value T} _ T{ +8.0 +T}@T{ +\f[V]net8.0\f[R] +T} +T{ +7.0 +T}@T{ +\f[V]net7.0\f[R] +T} +T{ 6.0 T}@T{ \f[V]net6.0\f[R] @@ -1263,6 +1432,7 @@ The possible values are: \f[V]IndividualB2C\f[R] - Individual authentication with Azure AD B2C. .IP \[bu] 2 \f[V]SingleOrg\f[R] - Organizational authentication for a single tenant. +Entra External ID tenants also use SingleOrg. .IP \[bu] 2 \f[V]MultiOrg\f[R] - Organizational authentication for multiple tenants. .IP \[bu] 2 @@ -1383,6 +1553,16 @@ Default value T} _ T{ +8.0 +T}@T{ +\f[V]net8.0\f[R] +T} +T{ +7.0 +T}@T{ +\f[V]net7.0\f[R] +T} +T{ 6.0 T}@T{ \f[V]net6.0\f[R] @@ -1450,6 +1630,8 @@ Default value: \f[V]false\f[R]. .PP * * * * * .SS \f[V]angular\f[R], \f[V]react\f[R] +.PP +\f[B]Discontinued since .NET 8 SDK.\f[R] .IP \[bu] 2 \f[B]\f[VB]-au|--auth \f[B]\f[R] .RS 2 @@ -1498,6 +1680,10 @@ Specifies the framework to target. Option not available in .NET Core 2.2 SDK. .PP The following table lists the default values according to the SDK version number you\[cq]re using: +.RS +.PP +There isn\[cq]t a React template for \f[V]net8.0\f[R], however, if you\[cq]re interested in developing React apps with ASP.NET Core, see Overview of Single Page Apps (SPAs) in ASP.NET Core. +.RE .PP .TS tab(@); @@ -1509,6 +1695,11 @@ Default value T} _ T{ +7.0 +T}@T{ +\f[V]net7.0\f[R] +T} +T{ 6.0 T}@T{ \f[V]net6.0\f[R] @@ -1558,87 +1749,6 @@ If specified, an explicit \f[V]Program\f[R] class and \f[V]Main\f[R] method will Available since .NET SDK 6.0.300. Default value: \f[V]false\f[R]. .RE -.PP - * * * * * -.SS \f[V]reactredux\f[R] -.IP \[bu] 2 -\f[B]\f[VB]--exclude-launch-settings\f[B]\f[R] -.RS 2 -.PP -Excludes \f[I]launchSettings.json\f[R] from the generated template. -.RE -.IP \[bu] 2 -\f[B]\f[VB]-f|--framework \f[B]\f[R] -.RS 2 -.PP -Specifies the framework to target. -Option not available in .NET Core 2.2 SDK. -.PP -The following table lists the default values according to the SDK version number you\[cq]re using: -.PP -.TS -tab(@); -l l. -T{ -SDK version -T}@T{ -Default value -T} -_ -T{ -6.0 -T}@T{ -\f[V]net6.0\f[R] -T} -T{ -5.0 -T}@T{ -\f[V]net5.0\f[R] -T} -T{ -3.1 -T}@T{ -\f[V]netcoreapp3.1\f[R] -T} -T{ -3.0 -T}@T{ -\f[V]netcoreapp3.0\f[R] -T} -T{ -2.1 -T}@T{ -\f[V]netcoreapp2.0\f[R] -T} -.TE -.PP -To create a project that targets a framework earlier than the SDK that you\[cq]re using, see \f[V]--framework\f[R] for \f[V]console\f[R] projects earlier in this article. -.RE -.IP \[bu] 2 -\f[B]\f[VB]--no-restore\f[B]\f[R] -.RS 2 -.PP -Doesn\[cq]t execute an implicit restore during project creation. -.RE -.IP \[bu] 2 -\f[B]\f[VB]--no-https\f[B]\f[R] -.RS 2 -.PP -Turns off HTTPS. -.RE -.IP \[bu] 2 -\f[B]\f[VB]--kestrelHttpPort\f[B]\f[R] -.RS 2 -.PP -Port number to use for the HTTP endpoint in \f[I]launchSettings.json\f[R]. -.RE -.IP \[bu] 2 -\f[B]\f[VB]--kestrelHttpsPort\f[B]\f[R] -.RS 2 -.PP -Port number to use for the HTTPS endpoint in \f[I]launchSettings.json\f[R]. -This option is not applicable when the parameter \f[V]no-https\f[R] is used (but \f[V]no-https\f[R] is ignored when an individual or organizational authentication setting is chosen for \f[V]--auth\f[R]). -.RE .PP * * * * * .SS \f[V]razorclasslib\f[R] @@ -1720,6 +1830,7 @@ The possible values are: \f[V]IndividualB2C\f[R] - Individual authentication with Azure AD B2C. .IP \[bu] 2 \f[V]SingleOrg\f[R] - Organizational authentication for a single tenant. +Entra External ID tenants also use SingleOrg. .IP \[bu] 2 \f[V]Windows\f[R] - Windows authentication. .RE @@ -1736,8 +1847,8 @@ The default value is \f[V]https://login.microsoftonline.com/tfp/\f[R]. .RS 2 .PP Create a project that uses the ASP.NET Core minimal API. -Default is \f[V]false\f[R], but this option is overridden by \f[V]--controllers\f[R]. -Since the default for \f[V]--controllers\f[R] is \f[V]false\f[R], entering \f[V]dotnet new webapi\f[R] without specifying either option creates a minimal API project. +Default is \f[V]false\f[R], but this option is overridden by \f[V]-controllers\f[R]. +Since the default for \f[V]-controllers\f[R] is \f[V]false\f[R], entering \f[V]dotnet new webapi\f[R] without specifying either option creates a minimal API project. .RE .IP \[bu] 2 \f[B]\f[VB]-ssp|--susi-policy-id \f[B]\f[R] @@ -1763,12 +1874,13 @@ Use with \f[V]IndividualB2C\f[R] or \f[V]SingleOrg\f[R] authentication. The default value is \f[V]11111111-1111-1111-11111111111111111\f[R]. .RE .IP \[bu] 2 -\f[B]\f[VB]--controllers\f[B]\f[R], \f[B]\f[VB]--use-controllers\f[B]\f[R] +\f[B]\f[VB]-controllers|--use-controllers\f[B]\f[R] .RS 2 .PP Whether to use controllers instead of minimal APIs. If both this option and \f[V]-minimal\f[R] are specified, this option overrides the value specified by \f[V]-minimal\f[R]. Default is \f[V]false\f[R]. +Available since .NET 8 SDK. .RE .IP \[bu] 2 \f[B]\f[VB]--domain \f[B]\f[R] @@ -1841,6 +1953,11 @@ Default value T} _ T{ +8.0 +T}@T{ +\f[V]net8.0\f[R] +T} +T{ 7.0 T}@T{ \f[V]net7.0\f[R] @@ -1888,6 +2005,25 @@ If specified, an explicit \f[V]Program\f[R] class and \f[V]Main\f[R] method will Available since .NET SDK 6.0.300. Default value: \f[V]false\f[R]. .RE +.PP + * * * * * +.SS \f[V]apicontroller\f[R] +.PP +API Controller with or without read/write actions. +.IP \[bu] 2 +\f[B]\f[VB]-p:n|--name \f[B]\f[R] +.RS 2 +.PP +The namespace for the generated code. +Default is \f[V]MyApp.Namespace\f[R]. +.RE +.IP \[bu] 2 +\f[B]\f[VB]-ac|--actions\f[B]\f[R] +.RS 2 +.PP +Create a controller with read/write actions. +Default is \f[V]false\f[R]. +.RE .PP * * * * * .SS \f[V]globaljson\f[R] @@ -1897,6 +2033,13 @@ Default value: \f[V]false\f[R]. .PP Specifies the version of the .NET SDK to use in the \f[I]global.json\f[R] file. .RE +.IP \[bu] 2 +\f[B]\f[VB]--roll-forward \f[B]\f[R] +.RS 2 +.PP +The roll-forward policy to use when selecting an SDK version, either as a fallback when a specific SDK version is missing or as a directive to use a later version. +For more information, see global-json. +.RE .SS \f[V]editorconfig\f[R] .PP Creates an \f[I].editorconfig\f[R] file for configuring code style preferences. diff --git a/documentation/manpages/sdk/dotnet-new-search.1 b/documentation/manpages/sdk/dotnet-new-search.1 index f904c1d09971..c5411ca680ba 100644 --- a/documentation/manpages/sdk/dotnet-new-search.1 +++ b/documentation/manpages/sdk/dotnet-new-search.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-new-search" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-new-search" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet new search .PP @@ -28,9 +28,9 @@ dotnet-new-search - searches for the templates supported by dotnet-new on NuGet. \f[C] dotnet new search -dotnet new search [] [--author ] [-lang|--language {\[dq]C#\[dq]|\[dq]F#\[dq]|VB}] +dotnet new search [] [--author ] [-lang|--language ] [--package ] [--tag ] [--type ] - [--columns ] [--columns-all] + [--columns ] [--columns-all] [-d|--diagnostics] [--verbosity ] [-h|--help] \f[R] .fi @@ -63,7 +63,7 @@ To activate tab completion for the .NET SDK, see Enable tab completion. .RS 2 .PP If the argument is specified, only templates containing \f[V]\f[R] in the template name or short name will be shown. -The argument is mandatory when \f[V]--author\f[R], \f[V]--language\f[R], \f[V]--package\f[R], \f[V]--tag\f[R] or \f[V]--type\f[R] options are not specified. +The argument is mandatory when \f[V]--author\f[R], \f[V]--language\f[R], \f[V]--package\f[R], \f[V]--tag\f[R], or \f[V]--type\f[R] options are not specified. .RS .PP Starting with .NET SDK 6.0.100, you can put the \f[V]\f[R] argument after the \f[V]--search\f[R] option. @@ -77,26 +77,26 @@ Using more than one argument is not allowed. .RS 2 .PP Filters templates based on template author. -Partial match is supported. +A partial match is supported. .RE .IP \[bu] 2 \f[B]\f[VB]--columns \f[B]\f[R] .RS 2 .PP -Comma-separated list of columns to display in the output. +The list of columns to display in the output. The supported columns are: .IP \[bu] 2 -\f[V]language\f[R] - A comma-separated list of languages supported by the template. +\f[V]author\f[R] - The template author. .IP \[bu] 2 -\f[V]tags\f[R] - The list of template tags. +\f[V]language\f[R] - The template language. .IP \[bu] 2 -\f[V]author\f[R] - The template author. +\f[V]tags\f[R] - The list of template tags. .IP \[bu] 2 -\f[V]type\f[R] - The template type: project or item. +\f[V]type\f[R] - The template type. .PP -The template name, short name, package name and total downloads count are always shown. -The default list of columns is template name, short name, author, language, package, and total downloads. -This list is equivalent to specifying \f[V]--columns=author,language\f[R]. +The template name, short name, package name, an indication if it\[cq]s a trusted source, and total downloads count are always shown. +The default list of columns is template name, short name, language, package, an indication if it\[cq]s a trusted source, and total downloads. +To specify multiple columns, use the \f[V]--columns\f[R] option multiple times. .RE .IP \[bu] 2 \f[B]\f[VB]--columns-all\f[B]\f[R] @@ -119,11 +119,11 @@ Prints out help for the search command. Available since .NET SDK 7.0.100. .RE .IP \[bu] 2 -\f[B]\f[VB]-lang|--language {C#|F#|VB}\f[B]\f[R] +\f[B]\f[VB]-lang|--language \f[B]\f[R] .RS 2 .PP Filters templates based on language supported by the template. -The language accepted varies by the template. +The language accepted varies by the template, possible languages are C#, F#, VB, SQL, JSON, TypeScript, and more. Not valid for some templates. .RS .PP @@ -137,7 +137,7 @@ For example, \f[V]dotnet new --search --language \[dq]F#\[dq]\f[R]. .RS 2 .PP Filters templates based on NuGet package ID. -Partial match is supported. +A partial match is supported. .RE .IP \[bu] 2 \f[B]\f[VB]--tag \f[B]\f[R] @@ -202,7 +202,7 @@ Search for all C# templates, showing the type and tags in the output. .IP .nf \f[C] -dotnet new search --language \[dq]C#\[dq] --columns \[dq]type,tags\[dq] +dotnet new search --language \[dq]C#\[dq] --columns \[dq]type\[dq] --columns \[dq]tags\[dq] \f[R] .fi .RE diff --git a/documentation/manpages/sdk/dotnet-new-uninstall.1 b/documentation/manpages/sdk/dotnet-new-uninstall.1 index a2dc561dfd43..f9838d1a963f 100644 --- a/documentation/manpages/sdk/dotnet-new-uninstall.1 +++ b/documentation/manpages/sdk/dotnet-new-uninstall.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-new-uninstall" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-new-uninstall" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet new uninstall .PP diff --git a/documentation/manpages/sdk/dotnet-new-update.1 b/documentation/manpages/sdk/dotnet-new-update.1 index 05a237913b61..b96cc6b9b9d3 100644 --- a/documentation/manpages/sdk/dotnet-new-update.1 +++ b/documentation/manpages/sdk/dotnet-new-update.1 @@ -14,7 +14,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-new-update" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-new-update" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet new update .PP @@ -80,6 +80,10 @@ For more information, see Common NuGet Configurations. Available since .NET SDK 7.0.100. .RE .IP \[bu] 2 +\f[B]\f[VB]--check-only|--dry-run\f[B]\f[R] +.PP +Only checks for updates and displays the template packages to be updated, without applying any updates. +.IP \[bu] 2 \f[B]\f[VB]-d|--diagnostics\f[B]\f[R] .RS 2 .PP diff --git a/documentation/manpages/sdk/dotnet-new.1 b/documentation/manpages/sdk/dotnet-new.1 index aba30cb7f9a3..164fb0b70674 100644 --- a/documentation/manpages/sdk/dotnet-new.1 +++ b/documentation/manpages/sdk/dotnet-new.1 @@ -15,7 +15,7 @@ . ftr VB CB . ftr VBI CBI .\} -.TH "dotnet-new" "1" "2023-10-25" "" ".NET Documentation" +.TH "dotnet-new" "1" "2024-10-02" "" ".NET Documentation" .hy .SH dotnet new