Skip to content
Open
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
4 changes: 2 additions & 2 deletions documentation/manpages/sdk/dotnet-build-server.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-build-server" "1" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-build-server" "1" "2025-11-15" "" ".NET Documentation"
.hy
.SH dotnet build-server
.PP
\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET Core 3.1 SDK and later versions
\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET 6 SDK and later versions
.SH NAME
.PP
dotnet-build-server - Interacts with servers started by a build.
Expand Down
60 changes: 25 additions & 35 deletions documentation/manpages/sdk/dotnet-build.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-build" "1" "2025-09-30" "" ".NET Documentation"
.TH "dotnet-build" "1" "2025-11-15" "" ".NET Documentation"
.hy
.SH dotnet build
.PP
\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET 6 and later versions
\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET 6 SDK and later versions
.SH NAME
.PP
dotnet-build - Builds a project, solution, or file-based app and all of its dependencies.
Expand All @@ -28,15 +28,13 @@ dotnet-build - Builds a project, solution, or file-based app and all of its depe
\f[C]
dotnet build [<PROJECT>|<SOLUTION>|<FILE>] [-a|--arch <ARCHITECTURE>]
[--artifacts-path <ARTIFACTS_DIR>]
[-c|--configuration <CONFIGURATION>] [-f|--framework <FRAMEWORK>]
[--disable-build-servers]
[--force] [--interactive] [--no-dependencies] [--no-incremental]
[--no-restore] [--nologo] [--no-self-contained] [--os <OS>]
[-o|--output <OUTPUT_DIRECTORY>]
[-p|--property:<PROPERTYNAME>=<VALUE>]
[-r|--runtime <RUNTIME_IDENTIFIER>]
[-sc|--self-contained [true|false]] [--source <SOURCE>]
[--tl:[auto|on|off]] [--use-current-runtime, --ucr [true|false]]
[-c|--configuration <CONFIGURATION>] [--disable-build-servers]
[-f|--framework <FRAMEWORK>] [--force] [--interactive]
[--no-dependencies] [--no-incremental] [--no-restore] [--nologo]
[--no-self-contained] [-o|--output <OUTPUT_DIRECTORY>] [--os <OS>]
[-p|--property:<PROPERTYNAME>=<VALUE>] [-r|--runtime <RUNTIME_IDENTIFIER>]
[--sc|--self-contained] [--source <SOURCE>]
[--tl:[auto|on|off]] [ --ucr|--use-current-runtime]
[-v|--verbosity <LEVEL>] [--version-suffix <VERSION_SUFFIX>]

dotnet build -h|--help
Expand Down Expand Up @@ -176,12 +174,6 @@ Forces all dependencies to be resolved even if the last restore was successful.
Specifying this flag is the same as deleting the \f[I]project.assets.json\f[R] file.
.RE
.IP \[bu] 2
\f[B]\f[VB]-?|-h|--help\f[B]\f[R]
.RS 2
.PP
Prints out a description of how to use the command.
.RE
.IP \[bu] 2
\f[B]\f[VB]--interactive\f[B]\f[R]
.RS 2
.PP
Expand Down Expand Up @@ -218,9 +210,7 @@ Doesn\[cq]t display the startup banner or the copyright message.
\f[B]\f[VB]--no-self-contained\f[B]\f[R]
.RS 2
.PP
Publishes the application as a framework dependent application.
A compatible .NET runtime must be installed on the target machine to run the application.
Available since .NET 6 SDK.
Equivalent to \f[V]--self-contained false\f[R].
.RE
.IP \[bu] 2
\f[B]\f[VB]-o|--output <OUTPUT_DIRECTORY>\f[B]\f[R]
Expand Down Expand Up @@ -272,12 +262,11 @@ If you use this option with .NET 6 SDK, use \f[V]--self-contained\f[R] or \f[V]-
If not specified, the default is to build for the current OS and architecture.
.RE
.IP \[bu] 2
\f[B]\f[VB]--self-contained [true|false]\f[B]\f[R]
\f[B]\f[VB]--sc|--self-contained\f[B]\f[R]
.RS 2
.PP
Publishes the .NET runtime with the application so the runtime doesn\[cq]t need to be installed on the target machine.
The default is \f[V]true\f[R] if a runtime identifier is specified.
Available since .NET 6.
Publish the .NET runtime with your application so the runtime doesn\[cq]t need to be installed on the target machine.
The default is \f[V]true\f[R].
.RE
.IP \[bu] 2
\f[B]\f[VB]--source <SOURCE>\f[B]\f[R]
Expand Down Expand Up @@ -314,23 +303,18 @@ Any diagnostics generated for that project.
This option is available starting in .NET 8.
.RE
.IP \[bu] 2
\f[B]\f[VB]-v|--verbosity <LEVEL>\f[B]\f[R]
\f[B]\f[VB]--ucr|--use-current-runtime\f[B]\f[R]
.RS 2
.PP
Sets the verbosity level of the command.
Allowed values are \f[V]q[uiet]\f[R], \f[V]m[inimal]\f[R], \f[V]n[ormal]\f[R], \f[V]d[etailed]\f[R], and \f[V]diag[nostic]\f[R].
The default is \f[V]minimal\f[R].
By default, MSBuild displays warnings and errors at all verbosity levels.
To exclude warnings, use \f[V]/property:WarningLevel=0\f[R].
For more information, see <xref:Microsoft.Build.Framework.LoggerVerbosity> and WarningLevel.
Use the current runtime as the target runtime.
.RE
.IP \[bu] 2
\f[B]\f[VB]--use-current-runtime, --ucr [true|false]\f[B]\f[R]
\f[B]\f[VB]-v|--verbosity <LEVEL>\f[B]\f[R]
.RS 2
.PP
Sets the \f[V]RuntimeIdentifier\f[R] to a platform portable \f[V]RuntimeIdentifier\f[R] based on the one of your machine.
This happens implicitly with properties that require a \f[V]RuntimeIdentifier\f[R], such as \f[V]SelfContained\f[R], \f[V]PublishAot\f[R], \f[V]PublishSelfContained\f[R], \f[V]PublishSingleFile\f[R], and \f[V]PublishReadyToRun\f[R].
If the property is set to false, that implicit resolution will no longer occur.
Sets the verbosity level of the command.
Allowed values are \f[V]q[uiet]\f[R], \f[V]m[inimal]\f[R], \f[V]n[ormal]\f[R], \f[V]d[etailed]\f[R], and \f[V]diag[nostic]\f[R].
For more information, see <xref:Microsoft.Build.Framework.LoggerVerbosity>.
.RE
.IP \[bu] 2
\f[B]\f[VB]--version-suffix <VERSION_SUFFIX>\f[B]\f[R]
Expand All @@ -340,6 +324,12 @@ Sets the value of the \f[V]$(VersionSuffix)\f[R] property to use when building t
This only works if the \f[V]$(Version)\f[R] property isn\[cq]t set.
Then, \f[V]$(Version)\f[R] is set to the \f[V]$(VersionPrefix)\f[R] combined with the \f[V]$(VersionSuffix)\f[R], separated by a dash.
.RE
.IP \[bu] 2
\f[B]\f[VB]-?|-h|--help\f[B]\f[R]
.RS 2
.PP
Prints out a description of how to use the command.
.RE
.SH EXAMPLES
.IP \[bu] 2
Build a project and its dependencies:
Expand Down
4 changes: 2 additions & 2 deletions documentation/manpages/sdk/dotnet-clean.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-clean" "1" "2025-09-30" "" ".NET Documentation"
.TH "dotnet-clean" "1" "2025-11-15" "" ".NET Documentation"
.hy
.SH dotnet clean
.PP
\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET 6 and later versions
\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET 6 SDK and later versions
.SH NAME
.PP
dotnet-clean - Cleans the output of a project.
Expand Down
13 changes: 10 additions & 3 deletions documentation/manpages/sdk/dotnet-dev-certs.1
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-dev-certs" "1" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-dev-certs" "1" "2025-11-15" "" ".NET Documentation"
.hy
.SH dotnet dev-certs
.PP
\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET Core 3.1 SDK and later versions
\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET 6 SDK and later versions
.SH NAME
.PP
dotnet-dev-certs - Generates a self-signed certificate to enable HTTPS use in development.
Expand All @@ -28,7 +28,8 @@ dotnet-dev-certs - Generates a self-signed certificate to enable HTTPS use in de
.nf
\f[C]
dotnet dev-certs https
[-c|--check] [--clean] [-ep|--export-path <PATH>]
[-c|--check] [--check-trust-machine-readable]
[--clean] [-ep|--export-path <PATH>]
[--format] [-i|--import] [-np|--no-password]
[-p|--password] [-q|--quiet] [-t|--trust]
[-v|--verbose] [--version]
Expand Down Expand Up @@ -91,6 +92,12 @@ Checks for the existence of the development certificate but doesn\[cq]t perform
Use this option with the \f[V]--trust\f[R] option to check if the certificate is not only valid but also trusted.
.RE
.IP \[bu] 2
\f[B]\f[VB]--check-trust-machine-readable\f[B]\f[R]
.RS 2
.PP
Same as running \f[V]--check --trust\f[R], but outputs the results in JSON.
.RE
.IP \[bu] 2
\f[B]\f[VB]--clean\f[B]\f[R]
.RS 2
.PP
Expand Down
65 changes: 15 additions & 50 deletions documentation/manpages/sdk/dotnet-environment-variables.7
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,14 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-environment-variables" "7" "2025-07-30" "" ".NET Documentation"
.TH "dotnet-environment-variables" "7" "2025-11-15" "" ".NET Documentation"
.hy
.SH NAME
.PP
dotnet-environment-variables - .NET environment variables
.SH DESCRIPTION
.PP
\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET Core 3.1 SDK and later versions
\f[B]This article applies to:\f[R] \[u2714]\[uFE0F] .NET 6 SDK and later versions
.PP
In this article, you\[cq]ll learn about the environment variables used by .NET.
Some environment variables are used by the .NET runtime, while others are only used by the .NET SDK and .NET CLI.
Expand Down Expand Up @@ -178,40 +178,6 @@ To opt-out, set the value to either \f[V]false\f[R] or \f[V]0\f[R].
.PP
Starting in .NET 5, this setting to use <xref:System.Net.Http.HttpClientHandler> is no longer available.
.RE
.SS \f[V]DOTNET_Jit*\f[R] and \f[V]DOTNET_GC*\f[R]
.PP
There are two stressing-related features for the JIT and JIT-generated GC information: JIT Stress and GC Hole Stress.
These features provide a way during development to discover edge cases and more \[lq]real world\[rq] scenarios without having to develop complex applications.
The following environment variables are available:
.IP \[bu] 2
\f[V]DOTNET_JitStress\f[R]
.IP \[bu] 2
\f[V]DOTNET_JitStressModeNamesOnly\f[R]
.IP \[bu] 2
\f[V]DOTNET_GCStress\f[R]
.SS JIT stress
.PP
Enabling JIT Stress can be done in several ways.
Set \f[V]DOTNET_JitStress\f[R] to a non-zero integer value to generate varying levels of JIT optimizations based on a hash of the method\[cq]s name.
To apply all optimizations set \f[V]DOTNET_JitStress=2\f[R], for example.
Another way to enable JIT Stress is by setting \f[V]DOTNET_JitStressModeNamesOnly=1\f[R] and then requesting the stress modes, space-delimited, in the \f[V]DOTNET_JitStressModeNames\f[R] variable.
.PP
As an example, consider:
.IP
.nf
\f[C]
DOTNET_JitStressModeNames=STRESS_USE_CMOV STRESS_64RSLT_MUL STRESS_LCL_FLDS
\f[R]
.fi
.SS GC Hole stress
.PP
Enabling GC Hole Stress causes GCs to always occur in specific locations and that helps to track down GC holes.
GC Hole Stress can be enabled using the \f[V]DOTNET_GCStress\f[R] environment variable.
.PP
For more information, see Investigating JIT and GC Hole stress (https://github.com/dotnet/runtime/blob/main/docs/design/coreclr/jit/investigate-stress.md).
.SS JIT memory barriers
.PP
The code generator for Arm64 allows all \f[V]MemoryBarriers\f[R] instructions to be removed by setting \f[V]DOTNET_JitNoMemoryBarriers\f[R] to \f[V]1\f[R].
.SS \f[V]DOTNET_RUNNING_IN_CONTAINER\f[R] and \f[V]DOTNET_RUNNING_IN_CONTAINERS\f[R]
.PP
The official .NET images (Windows and Linux) set the well-known environment variables:
Expand Down Expand Up @@ -303,19 +269,17 @@ In other cases, this environment variable is ignored.
\f[V]DOTNET_ROOT\f[R].
.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.
This is used by the .NET SDK to help tools that run during .NET SDK commands ensure they use the same \f[V]dotnet\f[R] runtime for any child \f[V]dotnet\f[R] processes they create for the duration of the command.
Tools and MSBuild Tasks within the SDK that invoke binaries via the \f[V]dotnet\f[R] host are expected to honor this environment variable to ensure a consistent experience.
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).
This path represents either the host used to launch the currently running \f[V]dotnet\f[R] process, or the host that would be used when running \f[V]dotnet\f[R] commands for the currently building project when executing under MSBuild.
The .NET SDK uses this variable to help tools that run during .NET SDK commands ensure they use the same \f[V]dotnet\f[R] host configuration for any child \f[V]dotnet\f[R] processes they create for the duration of the command.
Tools and any MSBuild logic that run within a build and invoke binaries via the \f[V]dotnet\f[R] host are expected to honor this environment variable to ensure a consistent experience.
.PP
Tools that invoke \f[V]dotnet\f[R] during an SDK command should use the following algorithm to locate it:
.IP \[bu] 2
if \f[V]DOTNET_HOST_PATH\f[R] is set, use that value directly
.IP \[bu] 2
otherwise, rely on \f[V]dotnet\f[R] via the system\[cq]s \f[V]PATH\f[R]
Starting in Visual Studio 2026, MSBuild in Visual Studio \f[I]also\f[R] ensures that \f[V]DOTNET_HOST_PATH\f[R] is set for all builds of .NET SDK projects.
For greatest consistency, all MSBuild tools and logic that want to use \f[I]the same dotnet binary\f[R] as the one that spawned the build should rely on \f[V]DOTNET_HOST_PATH\f[R] and should consider emitting a diagnostic (warning or error) when the variable is not present.
.RS
.PP
\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.
It is only intended to be used by binaries and tools that are invoked by the .NET SDK or MSBuild.
.RE
.SS \f[V]DOTNET_LAUNCH_PROFILE\f[R]
.PP
Expand Down Expand Up @@ -457,11 +421,6 @@ If set to \f[V]1\f[R] (enabled), enables rolling forward to a pre-release versio
By default (\f[V]0\f[R] - disabled), when a release version of .NET runtime is requested, roll-forward will only consider installed release versions.
.PP
For more information, see the \f[V]--roll-forward\f[R] option for the \f[V]dotnet\f[R] command.
.SS \f[V]DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX\f[R]
.PP
Disables minor version roll forward, if set to \f[V]0\f[R].
This setting is superseded in .NET Core 3.0 by \f[V]DOTNET_ROLL_FORWARD\f[R].
The new settings should be used instead.
.SS \f[V]DOTNET_CLI_FORCE_UTF8_ENCODING\f[R]
.PP
Forces the use of UTF-8 encoding in the console, even for older versions of Windows 10 that don\[cq]t fully support UTF-8.
Expand Down Expand Up @@ -521,6 +480,12 @@ For more information, see Advertising manifests.
Specifies the minimum number of hours between background downloads of advertising manifests for workloads.
The default is \f[V]24\f[R], which is no more frequently than once a day.
For more information, see Advertising manifests.
.SS \f[V]DOTNET_SKIP_WORKLOAD_INTEGRITY_CHECK\f[R]
.PP
Specifies whether to skip the workload integrity check on first-run.
The integrity check ensures that workloads from previous feature bands are accessible to the currently installed SDK.
Set the value to \f[V]true\f[R], \f[V]1\f[R], or \f[V]yes\f[R] to skip the check.
The default is \f[V]false\f[R], meaning the integrity check is performed.
.SS \f[V]DOTNET_TOOLS_ALLOW_MANIFEST_IN_ROOT\f[R]
.PP
Specifies whether .NET SDK local tools search for tool manifest files in the root folder on Windows.
Expand Down
Loading