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
1 change: 1 addition & 0 deletions .github/workflows/update-man-pages.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
name: Update man-pages workflow
on:
workflow_dispatch:
schedule:
- cron: "42 3 1/15 * *" # Trigger every 15 days at 03:42
#- cron: "0,5,10,15,20,25,30,35,40,45,50,55 * * * *" # For testing
Expand Down
53 changes: 43 additions & 10 deletions documentation/manpages/sdk/dotnet-environment-variables.7
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-environment-variables" "7" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-environment-variables" "7" "2025-08-29" "" ".NET Documentation"
.hy
.SH NAME
.PP
Expand Down Expand Up @@ -281,9 +281,26 @@ GitHub issue dotnet/core#7699 (https://github.com/dotnet/core/issues/7699)
.IP \[bu] 2
GitHub issue dotnet/runtime#79237 (https://github.com/dotnet/runtime/issues/79237)
.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.
These environment variables are used only when running apps via generated executables (apphosts).
The order in which the environment variables are considered is:
.IP "1." 3
\f[V]DOTNET_ROOT_<ARCH>\f[R], where \f[V]<ARCH>\f[R] is the architecture of the running executable (apphost).
For example:
.RS 4
.IP \[bu] 2
\f[V]DOTNET_ROOT_ARM64\f[R] is used for an Arm64 process.
.IP \[bu] 2
\f[V]DOTNET_ROOT_X64\f[R] is used for an x64 process.
This process might be running on x64 or Arm64 architecture.
.IP \[bu] 2
\f[V]DOTNET_ROOT_X86\f[R] is used for an x86 process.
This process might be running on x86 or x64 architecture.
.RE
.IP "2." 3
\f[V]DOTNET_ROOT(x86)\f[R] is used when a 32-bit process is running on 64-bit Windows.
In other cases, this environment variable is ignored.
.IP "3." 3
\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.
Expand Down Expand Up @@ -508,18 +525,20 @@ For more information, see Advertising manifests.
.PP
Specifies whether .NET SDK local tools search for tool manifest files in the root folder on Windows.
The default is \f[V]false\f[R].
.SS \f[V]COREHOST_TRACE\f[R]
.SS \f[V]DOTNET_HOST_TRACE\f[R]
.PP
\f[B]This variable applies to .NET 10 and later versions.\f[R] For older versions, replace the \f[V]DOTNET_HOST_\f[R] prefix with \f[V]COREHOST_\f[R].
.PP
Controls diagnostics tracing from the hosting components, such as \f[V]dotnet.exe\f[R], \f[V]hostfxr\f[R], and \f[V]hostpolicy\f[R].
.IP \[bu] 2
\f[V]COREHOST_TRACE=[0/1]\f[R] - default is \f[V]0\f[R] - tracing disabled.
\f[V]DOTNET_HOST_TRACE=[0/1]\f[R] - default is \f[V]0\f[R] - tracing disabled.
If set to \f[V]1\f[R], diagnostics tracing is enabled.
.IP \[bu] 2
\f[V]COREHOST_TRACEFILE=<file path>\f[R] - has an effect only if tracing is enabled by setting \f[V]COREHOST_TRACE=1\f[R].
\f[V]DOTNET_HOST_TRACEFILE=<file path>\f[R] - has an effect only if tracing is enabled by setting \f[V]DOTNET_HOST_TRACE=1\f[R].
When set, the tracing information is written to the specified file; otherwise, the trace information is written to \f[V]stderr\f[R].
.IP \[bu] 2
\f[V]COREHOST_TRACE_VERBOSITY=[1/2/3/4]\f[R] - default is \f[V]4\f[R].
The setting is used only when tracing is enabled via \f[V]COREHOST_TRACE=1\f[R].
\f[V]DOTNET_HOST_TRACE_VERBOSITY=[1/2/3/4]\f[R] - default is \f[V]4\f[R].
The setting is used only when tracing is enabled via \f[V]DOTNET_HOST_TRACE=1\f[R].
.RS 2
.IP \[bu] 2
\f[V]4\f[R] - all tracing information is written
Expand All @@ -531,8 +550,22 @@ The setting is used only when tracing is enabled via \f[V]COREHOST_TRACE=1\f[R].
\f[V]1\f[R] - only error messages are written
.RE
.PP
The typical way to get detailed trace information about application startup is to set \f[V]COREHOST_TRACE=1\f[R] and\f[V]COREHOST_TRACEFILE=host_trace.txt\f[R] and then run the application.
The typical way to get detailed trace information about application startup is to set \f[V]DOTNET_HOST_TRACE=1\f[R] and \f[V]DOTNET_HOST_TRACEFILE=host_trace.txt\f[R] and then run the application.
A new file \f[V]host_trace.txt\f[R] will be created in the current directory with the detailed information.
.SS \f[V]COREHOST_TRACE\f[R]
.PP
Controls diagnostics tracing from the hosting components, such as \f[V]dotnet.exe\f[R], \f[V]hostfxr\f[R], and \f[V]hostpolicy\f[R].
.RS
.PP
Starting with .NET 10, use the \f[V]DOTNET_HOST_TRACE\f[R] environment variables instead.
The \f[V]COREHOST_TRACE\f[R] variables work the same as \f[V]DOTNET_HOST_TRACE\f[R] variables.
.RE
.IP \[bu] 2
\f[V]COREHOST_TRACE\f[R] - see \f[V]DOTNET_HOST_TRACE\f[R].
.IP \[bu] 2
\f[V]COREHOST_TRACEFILE\f[R] - see \f[V]DOTNET_HOST_TRACEFILE\f[R].
.IP \[bu] 2
\f[V]COREHOST_TRACE_VERBOSITY\f[R] - see \f[V]DOTNET_HOST_TRACE_VERBOSITY\f[R].
.SS \f[V]SuppressNETCoreSdkPreviewMessage\f[R]
.PP
If set to \f[V]true\f[R], invoking \f[V]dotnet\f[R] won\[cq]t produce a warning when a preview SDK is being used.
Expand Down
3 changes: 1 addition & 2 deletions documentation/manpages/sdk/dotnet-msbuild.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-msbuild" "1" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-msbuild" "1" "2025-08-29" "" ".NET Documentation"
.hy
.SH dotnet msbuild
.PP
Expand All @@ -41,7 +41,6 @@ The options are all the same.
For more information about the available options, see the MSBuild command-line reference.
.PP
The dotnet build command is equivalent to \f[V]dotnet msbuild -restore\f[R].
When you don\[cq]t want to build the project and you have a specific target you want to run, use \f[V]dotnet build\f[R] or \f[V]dotnet msbuild\f[R] and specify the target.
.SH EXAMPLES
.IP \[bu] 2
Build a project and its dependencies:
Expand Down
31 changes: 27 additions & 4 deletions documentation/manpages/sdk/dotnet-nuget-locals.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-nuget-locals" "1" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-nuget-locals" "1" "2025-08-29" "" ".NET Documentation"
.hy
.SH dotnet nuget locals
.PP
Expand Down Expand Up @@ -42,7 +42,7 @@ The \f[V]dotnet nuget locals\f[R] command clears or lists local NuGet resources
The cache location to list or clear.
It accepts one of the following values:
.IP \[bu] 2
\f[V]all\f[R] - Indicates that the specified operation is applied to all cache types: http-request cache, global packages cache, and the temporary cache.
\f[V]all\f[R] - Indicates that the specified operation is applied to all cache types: http-request cache, global packages cache, temporary cache, and plugins cache.
.IP \[bu] 2
\f[V]http-cache\f[R] - Indicates that the specified operation is applied only to the http-request cache.
The other cache locations aren\[cq]t affected.
Expand All @@ -52,6 +52,9 @@ The other cache locations aren\[cq]t affected.
.IP \[bu] 2
\f[V]temp\f[R] - Indicates that the specified operation is applied only to the temporary cache.
The other cache locations aren\[cq]t affected.
.IP \[bu] 2
\f[V]plugins-cache\f[R] - Indicates that the specified operation is applied only to the plugins cache.
The other cache locations aren\[cq]t affected.
.RE
.SH OPTIONS
.IP \[bu] 2
Expand Down Expand Up @@ -83,7 +86,7 @@ The list option is used to display the location of the specified cache type.
.RE
.SH EXAMPLES
.IP \[bu] 2
Displays the paths of all the local cache directories (http-cache directory, global-packages cache directory, and temporary cache directory):
Displays the paths of all the local cache directories (http-cache directory, global-packages cache directory, temporary cache directory, and plugins cache directory):
.RS 2
.IP
.nf
Expand All @@ -103,7 +106,17 @@ dotnet nuget locals http-cache --list
.fi
.RE
.IP \[bu] 2
Clears all files from all local cache directories (http-cache directory, global-packages cache directory, and temporary cache directory):
Displays the path for the local plugins cache directory:
.RS 2
.IP
.nf
\f[C]
dotnet nuget locals plugins-cache --list
\f[R]
.fi
.RE
.IP \[bu] 2
Clears all files from all local cache directories (http-cache directory, global-packages cache directory, temporary cache directory, and plugins cache directory):
.RS 2
.IP
.nf
Expand Down Expand Up @@ -132,6 +145,16 @@ dotnet nuget locals temp -c
\f[R]
.fi
.RE
.IP \[bu] 2
Clears all files in local plugins cache directory:
.RS 2
.IP
.nf
\f[C]
dotnet nuget locals plugins-cache -c
\f[R]
.fi
.RE
.SS Troubleshooting
.PP
For information on common problems and errors while using the \f[V]dotnet nuget locals\f[R] command, see Managing the NuGet cache.
10 changes: 8 additions & 2 deletions documentation/manpages/sdk/dotnet-nuget-push.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-nuget-push" "1" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-nuget-push" "1" "2025-08-29" "" ".NET Documentation"
.hy
.SH dotnet nuget push
.PP
Expand All @@ -26,7 +26,7 @@ dotnet-nuget-push - Pushes a package to the server and publishes it.
.IP
.nf
\f[C]
dotnet nuget push [<ROOT>] [-d|--disable-buffering] [--force-english-output]
dotnet nuget push [<ROOT>] [--allow-insecure-connections] [-d|--disable-buffering] [--force-english-output]
[--interactive] [-k|--api-key <API_KEY>] [-n|--no-symbols]
[--no-service-endpoint] [-s|--source <SOURCE>] [--skip-duplicate]
[-sk|--symbol-api-key <API_KEY>] [-ss|--symbol-source <SOURCE>]
Expand Down Expand Up @@ -73,6 +73,12 @@ Specifies the file path to the package to be pushed.
.RE
.SH OPTIONS
.IP \[bu] 2
\f[B]\f[VB]--allow-insecure-connections\f[B]\f[R]
.RS 2
.PP
Allows pushing to HTTP sources (insecure).
.RE
.IP \[bu] 2
\f[B]\f[VB]-d|--disable-buffering\f[B]\f[R]
.RS 2
.PP
Expand Down
20 changes: 11 additions & 9 deletions documentation/manpages/sdk/dotnet-nuget-sign.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-nuget-sign" "1" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-nuget-sign" "1" "2025-08-29" "" ".NET Documentation"
.hy
.SH dotnet nuget sign
.PP
Expand Down Expand Up @@ -49,8 +49,8 @@ The \f[V]dotnet nuget sign\f[R] command signs all the packages matching the firs
The certificate with the private key can be obtained from a file or from a certificate installed in a certificate store by providing a subject name or a SHA-1 fingerprint.
.RS
.PP
This command requires a certificate root store that is valid for both code signing and timestamping.
Also, this command may not be supported on some combinations of operating system and .NET SDK.
This command requires a certificate root store that\[cq]s valid for both code signing and timestamping.
Also, this command might not be supported on some combinations of operating system and .NET SDK.
For more information, see NuGet signed package verification.
.RE
.SH ARGUMENTS
Expand Down Expand Up @@ -108,9 +108,11 @@ If there are multiple matching certificates in the result, or no matching certif
Specifies the fingerprint of the certificate used to search a local certificate store for the certificate.
.PP
Starting with .NET 9, this option can be used to specify the SHA-1, SHA-256, SHA-384, or SHA-512 fingerprint of the certificate.
However, a \f[V]NU3043\f[R] warning is raised when a SHA-1 certificate fingerprint is used because it is no longer considered secure.
However, a \f[V]NU3043\f[R] warning is raised when a SHA-1 certificate fingerprint is used because it\[cq]s no longer considered secure.
In .NET 10 and later versions, the warning is elevated to an error.
Only SHA-2 family fingerprints (SHA-256, SHA-384, and SHA-512) are supported.
.PP
All the previous versions of the .NET SDK continue to accept only SHA-1 certificate fingerprint.
All pre-.NET 9 versions of the .NET SDK continue to accept only SHA-1 certificate fingerprint.
.RE
.IP \[bu] 2
\f[B]\f[VB]--certificate-password <PASSWORD>\f[B]\f[R]
Expand Down Expand Up @@ -196,12 +198,12 @@ dotnet nuget sign foo.nupkg --certificate-path cert.pfx --certificate-password p
.fi
.RE
.IP \[bu] 2
Sign \f[I]foo.nupkg\f[R] with certificate (password protected) matches with the specified SHA-1 fingerprint in the default certificate store (CurrentUser):
Sign \f[I]foo.nupkg\f[R] with certificate (password protected) matches with the specified SHA-256 fingerprint in the default certificate store (CurrentUser):
.RS 2
.IP
.nf
\f[C]
dotnet nuget sign foo.nupkg --certificate-fingerprint 89967D1DD995010B6C66AE24FF8E66885E6E03A8 --certificate-password password
dotnet nuget sign foo.nupkg --certificate-fingerprint B2C40F2F8775D7B7EBEB76BD5A9D3A4BC3F4B8A4D8D7C5F8A4C6B3E7A9E2D5F1 --certificate-password password
\f[R]
.fi
.RE
Expand All @@ -216,12 +218,12 @@ dotnet nuget sign foo.nupkg --certificate-subject-name \[dq]Test certificate for
.fi
.RE
.IP \[bu] 2
Sign \f[I]foo.nupkg\f[R] with certificate (password protected) matches with the specified SHA-1 fingerprint in the certificate store CurrentUser:
Sign \f[I]foo.nupkg\f[R] with certificate (password protected) matches with the specified SHA-256 fingerprint in the certificate store CurrentUser:
.RS 2
.IP
.nf
\f[C]
dotnet nuget sign foo.nupkg --certificate-fingerprint 89967D1DD995010B6C66AE24FF8E66885E6E03A8 --certificate-password password --certificate-store-location CurrentUser --certificate-store-name Root
dotnet nuget sign foo.nupkg --certificate-fingerprint B2C40F2F8775D7B7EBEB76BD5A9D3A4BC3F4B8A4D8D7C5F8A4C6B3E7A9E2D5F1 --certificate-password password --certificate-store-location CurrentUser --certificate-store-name Root
\f[R]
.fi
.RE
Expand Down
3 changes: 2 additions & 1 deletion documentation/manpages/sdk/dotnet-nuget-verify.1
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-nuget-verify" "1" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-nuget-verify" "1" "2025-08-29" "" ".NET Documentation"
.hy
.SH dotnet nuget verify
.PP
Expand All @@ -39,6 +39,7 @@ dotnet nuget verify -h|--help
.SH DESCRIPTION
.PP
The \f[V]dotnet nuget verify\f[R] command verifies a signed NuGet package.
In .NET 10 and later versions, the command also outputs the package\[cq]s content hash, which might be useful to investigate lock file validation errors.
.RS
.PP
This command requires a certificate root store that is valid for both code signing and timestamping.
Expand Down
15 changes: 9 additions & 6 deletions documentation/manpages/sdk/dotnet-nuget-why.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-nuget-why" "1" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-nuget-why" "1" "2025-08-29" "" ".NET Documentation"
.hy
.SH dotnet nuget why
.PP
Expand All @@ -35,13 +35,16 @@ dotnet nuget why -h|--help
.PP
The \f[V]dotnet nuget why\f[R] command shows the dependency graph for a particular package for a given project or solution.
.PP
Starting from the .NET 9 SDK, it\[cq]s possible to pass a NuGet assets file in place of the project file, in order to use the command with projects that can\[cq]t be restored with the .NET SDK.
First, restore the project in Visual Studio, or \f[V]msbuild.exe\f[R].
By default the assets file is in the project\[cq]s \f[V]obj\[rs]\f[R] directory, but you can find the location with \f[V]msbuild.exe path\[rs]to\[rs]project.proj -getProperty:ProjectAssetsFile\f[R].
Finally, run \f[V]dotnet nuget why path\[rs]to\[rs]project.assets.json SomePackage\f[R].
.PP
Starting with version 9.0.200, the command introduces support for runtime identifier (RID) specific packages by generating separate dependency trees for each RID and framework combination.
For example, if a project targets \f[V]net9.0\f[R] with the \f[V]win-x64\f[R] RID, the command generates trees for \f[V]net9.0/win-x64\f[R] and \f[V]net9.0\f[R].
.SS Older project format
.PP
To use the command with projects that can\[cq]t be restored with the .NET SDK, you can pass a NuGet assets file in place of the project file (starting with the .NET 9 SDK):
.IP "1." 3
First, restore the project in Visual Studio or using \f[V]msbuild.exe\f[R].
By default, the assets file is in the project\[cq]s \f[V]obj\[rs]\f[R] directory, but you can find the location with \f[V]msbuild.exe path\[rs]to\[rs]project.proj -getProperty:ProjectAssetsFile\f[R].
.IP "2." 3
Run \f[V]dotnet nuget why path\[rs]to\[rs]project.assets.json SomePackage\f[R].
.SH ARGUMENTS
.IP \[bu] 2
\f[B]\f[VB]PROJECT|SOLUTION\f[B]\f[R]
Expand Down
10 changes: 4 additions & 6 deletions documentation/manpages/sdk/dotnet-publish.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-publish" "1" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-publish" "1" "2025-08-29" "" ".NET Documentation"
.hy
.SH dotnet publish
.PP
Expand Down Expand Up @@ -57,7 +57,7 @@ The application\[cq]s dependencies, which are copied from the NuGet cache into t
The \f[V]dotnet publish\f[R] command\[cq]s output is ready for deployment to a hosting system (for example, a server, PC, Mac, laptop) for execution.
It\[cq]s the only officially supported way to prepare the application for deployment.
Depending on the type of deployment that the project specifies, the hosting system may or may not have the .NET shared runtime installed on it.
For more information, see Publish .NET apps with the .NET CLI.
For more information, see .NET application publishing overview.
.SS Implicit restore
.PP
You don\[cq]t have to run \f[V]dotnet restore\f[R] because it\[cq]s run implicitly by all commands that require a restore to occur, such as \f[V]dotnet new\f[R], \f[V]dotnet build\f[R], \f[V]dotnet run\f[R], \f[V]dotnet test\f[R], \f[V]dotnet publish\f[R], and \f[V]dotnet pack\f[R].
Expand Down Expand Up @@ -346,7 +346,7 @@ Available since .NET 6.
.PP
Publishes the .NET runtime with your application so the runtime doesn\[cq]t need to be installed on the target machine.
Default is \f[V]true\f[R] if a runtime identifier is specified and the project is an executable project (not a library project).
For more information, see .NET application publishing and Publish .NET apps with the .NET CLI.
For more information, see Self-contained deployment.
.PP
If this option is used without specifying \f[V]true\f[R] or \f[V]false\f[R], the default is \f[V]true\f[R].
In that case, don\[cq]t put the solution or project argument immediately after \f[V]--self-contained\f[R], because \f[V]true\f[R] or \f[V]false\f[R] is expected in that position.
Expand All @@ -369,7 +369,7 @@ The URI of the NuGet package source to use during the restore operation.
.PP
Publishes the application for a given runtime.
For a list of Runtime Identifiers (RIDs), see the RID catalog.
For more information, see .NET application publishing and Publish .NET apps with the .NET CLI.
For more information, see .NET application publishing overview.
If you use this option, use \f[V]--self-contained\f[R] or \f[V]--no-self-contained\f[R] also.
.RE
.IP \[bu] 2
Expand Down Expand Up @@ -495,8 +495,6 @@ dotnet publish --no-dependencies
.IP \[bu] 2
\&.NET application publishing overview
.IP \[bu] 2
Publish .NET apps with the .NET CLI
.IP \[bu] 2
Target frameworks
.IP \[bu] 2
Runtime Identifier (RID) catalog
Expand Down
4 changes: 2 additions & 2 deletions documentation/manpages/sdk/dotnet-reference-remove.1
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
. ftr VB CB
. ftr VBI CBI
.\}
.TH "dotnet-reference-remove" "1" "2025-06-13" "" ".NET Documentation"
.TH "dotnet-reference-remove" "1" "2025-08-29" "" ".NET Documentation"
.hy
.SH dotnet reference remove
.PP
Expand All @@ -24,7 +24,7 @@
dotnet-reference-remove - Removes project-to-project (P2P) references.
.RS
.PP
If you\[cq]re using .NET 9 SDK or earlier, use the \[lq]verb first\[rq] form (dotnet-reference-remove) instead.
If you\[cq]re using .NET 9 SDK or earlier, use the \[lq]verb first\[rq] form (dotnet-remove-reference) instead.
The \[lq]noun first\[rq] form was introduced in .NET 10.
For more information, see More consistent command order.
.RE
Expand Down
Loading