Skip to content

Merge main into live #45854

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Apr 18, 2025
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
2 changes: 1 addition & 1 deletion docs/core/deploying/deploy-with-cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ The `<TargetFramework>` setting of the project file specifies the default target

If you want to target more than one framework, you can set the `<TargetFrameworks>` setting to multiple TFM values, separated by a semicolon. When you build your app, a build is produced for each target framework. However, when you publish your app, you must specify the target framework with the `dotnet publish -f <TFM>` command.

The default **BUILD-CONFIGURATION** mode is **Debug** unless changed with the `-c` parameter.
The default **BUILD-CONFIGURATION** mode is **Release** unless changed with the `-c` parameter.

The default output directory of the [`dotnet publish`](../tools/dotnet-publish.md) command is `./bin/<BUILD-CONFIGURATION>/<TFM>/publish/`. For example, `dotnet publish -c Release -f net9.0` publishes to `./bin/Release/net9.0/publish/`. However, you can opt in to a simplified output path and folder structure for all build outputs. For more information, see [Artifacts output layout](../sdk/artifacts-output.md).

Expand Down
5 changes: 5 additions & 0 deletions docs/core/diagnostics/dotnet-dump.md
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,11 @@ dotnet-dump collect [-h|--help] [-p|--process-id] [-n|--name] [--type] [-o|--out
> [!NOTE]
> To collect a dump using `dotnet-dump`, it needs to be run as the same user as the user running target process or as root. Otherwise, the tool will fail to establish a connection with the target process.

> [!NOTE]
> Collecting a full or heap dump may cause the OS to page in substantial virtual memory for the target process. If the target process is running in a container with an enforced memory limit, the increased memory usage
> may cause the OS to terminate the container if the limit was exceeded. We recommend testing to ensure the memory limit is set high enough. Another option is to temporarily change or remove the limit
> prior to dump collection if your environment supports doing so.

## dotnet-dump analyze

Starts an interactive shell to explore a dump. The shell accepts various [SOS commands](#analyze-sos-commands).
Expand Down
4 changes: 2 additions & 2 deletions docs/csharp/language-reference/toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ items:
href: ./configure-language-version.md
- name: Types
items:
- name: Built-in types
href: ./builtin-types/built-in-types.md
- name: Value types
items:
- name: Overview
Expand Down Expand Up @@ -68,8 +70,6 @@ items:
href: ./builtin-types/arrays.md
- name: void
href: ./builtin-types/void.md
- name: Built-in types
href: ./builtin-types/built-in-types.md
- name: Unmanaged types
href: ./builtin-types/unmanaged-types.md
- name: Default values
Expand Down
20 changes: 10 additions & 10 deletions docs/fundamentals/code-analysis/quality-rules/ca2249.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,22 +110,22 @@ class MyClass
found = str.Contains('x');

// No comparisonType in string overload, adds StringComparison.CurrentCulture to resulting fix
found = !string.Contains("text", StringComparison.CurrentCulture);
found = string.Contains("text", StringComparison.CurrentCulture);
found = !str.Contains("text", StringComparison.CurrentCulture);
found = str.Contains("text", StringComparison.CurrentCulture);

// comparisonType equal to StringComparison.Ordinal, removes the argument
found = !string.Contains('x');
found = string.Contains('x');
found = !str.Contains('x');
found = str.Contains('x');

found = !string.Contains("text");
found = string.Contains("text");
found = !str.Contains("text");
found = str.Contains("text");

// comparisonType different than StringComparison.Ordinal, preserves the argument
;found = !string.Contains('x', StringComparison.OrdinalIgnoreCase)
found = string.Contains('x', StringComparison.CurrentCulture);
found = !str.Contains('x', StringComparison.OrdinalIgnoreCase);
found = str.Contains('x', StringComparison.CurrentCulture);

found = !string.Contains("text", StringComparison.InvariantCultureIgnoreCase);
found = string.Contains("text", StringComparison.InvariantCulture);
found = !str.Contains("text", StringComparison.InvariantCultureIgnoreCase);
found = str.Contains("text", StringComparison.InvariantCulture);

// This case had to be manually fixed
if (!str.Contains("text"))
Expand Down
Loading