From 00ec59070645dc0951f12f120e504bb3a66b25fe Mon Sep 17 00:00:00 2001 From: Azure SDK Bot <53356347+azure-sdk@users.noreply.github.com> Date: Mon, 27 Jan 2025 16:39:04 -0800 Subject: [PATCH 01/55] Update package index with latest published versions (#44558) --- docs/azure/includes/dotnet-all.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/azure/includes/dotnet-all.md b/docs/azure/includes/dotnet-all.md index 23db0258e6ddc..3af2b0f341e94 100644 --- a/docs/azure/includes/dotnet-all.md +++ b/docs/azure/includes/dotnet-all.md @@ -505,7 +505,7 @@ | Functions Extensions - Cosmos DB Mongo | NuGet [1.0.2](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.CosmosDb.Mongo/1.0.2) | | | | Functions Extensions - Dapr | NuGet [1.0.1](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.Dapr/1.0.1) | | | | Functions Extensions - Dapr Core | NuGet [1.0.1](https://www.nuget.org/packages/Microsoft.Azure.Functions.Extensions.Dapr.Core/1.0.1) | | | -| Functions Extensions - HTTP AspNet Core | NuGet [2.0.0](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore/2.0.0) | | | +| Functions Extensions - HTTP AspNet Core | NuGet [2.0.1](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore/2.0.1) | | | | Functions Extensions - Redis | NuGet [1.0.0](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Redis/1.0.0) | | | | Functions Extensions - Redis | NuGet [1.0.0](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.Redis/1.0.0) | | | | Functions Extensions - Worker Extentions | NuGet [1.0.1](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Dapr/1.0.1) | | | From 3fdb4bb9f90241e43d54248e42688e692c2aa34e Mon Sep 17 00:00:00 2001 From: Adit Sheth Date: Tue, 28 Jan 2025 06:12:22 -0800 Subject: [PATCH 02/55] Enhanced F# Literals Documentation with Comprehensive Examples and Advanced Use Cases (#44527) * Fixed bug 36921. * Resolved comments. * Update docs/fsharp/language-reference/literals.md --------- Co-authored-by: Adit Sheth Co-authored-by: Bill Wagner --- docs/fsharp/language-reference/literals.md | 30 +++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/docs/fsharp/language-reference/literals.md b/docs/fsharp/language-reference/literals.md index 8236b4543f4f8..2e51f05b2d618 100644 --- a/docs/fsharp/language-reference/literals.md +++ b/docs/fsharp/language-reference/literals.md @@ -48,7 +48,21 @@ let x = "a" + "b" // evaluated at run-time let y = "a" + "b" // evaluated at compile-time ``` -For example, this distinction matters when calling an [external function](functions/external-functions.md), because `DllImport` is an attribute that needs to know the value of `myDLL` during compilation. Without the `[]` declaration, this code would fail to compile: +> [!NOTE] +> Functions cannot be used to compute `[]` values because literals must be determined at compile-time and cannot depend on runtime evaluation. + +### Why functions cannot compute literals + +The `[]` attribute requires values to be known at compile-time. Functions, even if they seem to produce constant outputs, are evaluated at runtime, making them unsuitable for `[]`. This restriction ensures that literals can be safely used in scenarios like pattern matching, attribute arguments, and interop with external functions. + +For instance, attempting to assign the result of a function to a literal will fail: + +```fsharp +[] +let yFunc() = "a" + "b" // error FS0267: this is not a valid constant expression +``` + +This distinction also matters when calling an [external function](functions/external-functions.md). For example, `DllImport` is an attribute that needs to know the value of `myDLL` during compilation. Without the `[]` declaration, this code would fail to compile: ```fsharp [] @@ -77,6 +91,20 @@ let Literal2 = 1 ||| 64 let Literal3 = System.IO.FileAccess.Read ||| System.IO.FileAccess.Write ``` +### Example of concise pattern matching using Named literals + +Named literals can make pattern matching more concise by avoiding the need for `when` clauses or additional logic. For example: + +```fsharp +[] +let ErrorCode = 404 + +let handleResponse code = + match code with + | ErrorCode -> "Not Found" + | _ -> "Other Response" +``` + ## Remarks Named literals are useful for: From 76212abd3a311ae579fd765b6a367bc6ec105b41 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Tue, 28 Jan 2025 06:15:15 -0800 Subject: [PATCH 03/55] Update live-protection.yml (#44557) --- .github/workflows/live-protection.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/live-protection.yml b/.github/workflows/live-protection.yml index 0523cb06853ac..1aa5631ba4f6a 100644 --- a/.github/workflows/live-protection.yml +++ b/.github/workflows/live-protection.yml @@ -6,7 +6,7 @@ permissions: jobs: live_protection_job: - name: Create comment + name: Check base branch runs-on: ubuntu-latest steps: From dfa0dfbdfa67533f62650954f68c7f42e2dbb32d Mon Sep 17 00:00:00 2001 From: Adit Sheth Date: Tue, 28 Jan 2025 06:15:35 -0800 Subject: [PATCH 04/55] Fixed bug 36231. (#44556) Co-authored-by: Adit Sheth --- .../data-types/how-to-declare-a-structure.md | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/docs/visual-basic/programming-guide/language-features/data-types/how-to-declare-a-structure.md b/docs/visual-basic/programming-guide/language-features/data-types/how-to-declare-a-structure.md index 1db092a270abd..435ca92c6e9f5 100644 --- a/docs/visual-basic/programming-guide/language-features/data-types/how-to-declare-a-structure.md +++ b/docs/visual-basic/programming-guide/language-features/data-types/how-to-declare-a-structure.md @@ -44,11 +44,24 @@ You begin a structure declaration with the [Structure Statement](../../../langua salary *= raise End Sub Public Event salaryReviewTime() + + ' Method to raise the event + Public Sub TriggerSalaryReview() + RaiseEvent salaryReviewTime() + End Sub End Structure ``` - The `salary` field in the preceding example is `Private`, which means it is inaccessible outside the structure, even from the containing class. However, the `giveRaise` procedure is `Public`, so it can be called from outside the structure. Similarly, you can raise the `salaryReviewTime` event from outside the structure. - + The `salary` field in the preceding example is `Private`, which means it is inaccessible outside the structure, even from the containing class. However, the `giveRaise` procedure is `Public`, so it can be called from outside the structure. Similarly, you can raise the `salaryReviewTime` event indirectly by calling a method within the structure that raises it. For example: + + ```vb + Public Sub TriggerSalaryReview() + RaiseEvent salaryReviewTime() + End Sub + ``` + + This allows you to control how and when the event is raised while keeping the event inaccessible directly from outside the structure. + In addition to variables, `Sub` procedures, and events, you can also define constants, `Function` procedures, and properties in a structure. You can designate at most one property as the *default property*, provided it takes at least one argument. You can handle an event with a [Shared](../../../language-reference/modifiers/shared.md)`Sub` procedure. For more information, see [How to: Declare and Call a Default Property in Visual Basic](../procedures/how-to-declare-and-call-a-default-property.md). ## See also From 86328beacc06554a526f80f4ca33a50baaad0645 Mon Sep 17 00:00:00 2001 From: Azure SDK Bot <53356347+azure-sdk@users.noreply.github.com> Date: Tue, 28 Jan 2025 09:18:12 -0800 Subject: [PATCH 05/55] Update package index with latest published versions (#44577) --- docs/azure/includes/dotnet-all.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/azure/includes/dotnet-all.md b/docs/azure/includes/dotnet-all.md index 3af2b0f341e94..8977f1518fb1c 100644 --- a/docs/azure/includes/dotnet-all.md +++ b/docs/azure/includes/dotnet-all.md @@ -371,8 +371,8 @@ | Unknown Display Name | NuGet [1.0.0](https://www.nuget.org/packages/Azure.AI.ContentSafety.Extension.Embedded.Text/1.0.0)
NuGet [1.0.1-beta.4](https://www.nuget.org/packages/Azure.AI.ContentSafety.Extension.Embedded.Text/1.0.1-beta.4) | | | | Unknown Display Name | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Maps.TimeZones/1.0.0-beta.1) | | | | Unknown Display Name | NuGet [1.0.0-beta.0](https://www.nuget.org/packages/Microsoft.Azure.Cosmos.FaultInjection/1.0.0-beta.0) | | | -| Unknown Display Name | NuGet [1.0.6-preview](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.MySql/1.0.6-preview) | | | -| Unknown Display Name | NuGet [1.0.6-preview](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.MySql/1.0.6-preview) | | | +| Unknown Display Name | NuGet [1.0.14-preview](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.MySql/1.0.14-preview) | | | +| Unknown Display Name | NuGet [1.0.14-preview](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.MySql/1.0.14-preview) | | | | Unknown Display Name | NuGet [1.42.0](https://www.nuget.org/packages/Microsoft.CognitiveServices.Speech.CLI/1.42.0) | | | | Unknown Display Name | NuGet [1.42.0](https://www.nuget.org/packages/Microsoft.CognitiveServices.Speech.Extension.Embedded.SR/1.42.0) | | | | Unknown Display Name | NuGet [1.42.0](https://www.nuget.org/packages/Microsoft.CognitiveServices.Speech.Extension.Embedded.TTS/1.42.0) | | | From 68dd7b692b686cd1fa5fe418190389f3b5974831 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Amaury=20Lev=C3=A9?= Date: Tue, 28 Jan 2025 19:14:38 +0100 Subject: [PATCH 06/55] Add MSTESTEXP doc (#44575) Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com> --- .../core/testing/mstest-analyzers/overview.md | 36 ++++++++++++++----- 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/docs/core/testing/mstest-analyzers/overview.md b/docs/core/testing/mstest-analyzers/overview.md index f63c37ab1fb37..c9190b1417234 100644 --- a/docs/core/testing/mstest-analyzers/overview.md +++ b/docs/core/testing/mstest-analyzers/overview.md @@ -17,18 +17,38 @@ The rules are organized into categories such as performance usage... ## Categories -**[Design rules](design-rules.md)** +### Design rules -Design rules will help you create and maintain test suites that adhere to proper design and good practices. +[Design rules](design-rules.md) help you create and maintain test suites that adhere to proper design and good practices. -**[Performance rules](performance-rules.md)** +### Performance rules -Rules that support high-performance testing. +[Performance rules](performance-rules.md) support high-performance testing. -**[Suppression rules](suppression-rules.md)** +### Suppression rules -Rules that support suppressing diagnostics from other rules. +[Suppression rules](suppression-rules.md) support suppressing diagnostics from other rules. -**[Usage rules](usage-rules.md)** +### Usage rules -Rules that support proper usage of MSTest. +[Usage rules](usage-rules.md) support proper usage of MSTest. + +### MSTESTEXP + +Several APIs of MSTest are decorated with the . This attribute indicates that the API is experimental and may be removed or changed in future versions of MSTest. The attribute is used to identify APIs that aren't yet stable and may not be suitable for production use. + +The MSTESTEXP diagnostic alerts you to use of an experimental API in your code. To suppress this diagnostic with the `SuppressMessageAttribute`, add the following code to your project: + +```csharp +using System.Diagnostics.CodeAnalysis; + +[assembly: SuppressMessage("MSTESTEXP", "Justification")] +``` + +Alternatively, you can suppress this diagnostic with preprocessor directive by adding the following code to your project: + +```csharp +#pragma warning disable MSTESTEXP + // API that is causing the warning. +#pragma warning restore MSTESTEXP +``` From 25e9a7541a1188ac448c0623385fcf3332b45a77 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Tue, 28 Jan 2025 13:37:11 -0500 Subject: [PATCH 07/55] code fence `into` when used as a keyword (#44563) Fixes #44559 There were a few instances of "into" that weren't code-fenced when it was used as a keyword, `into`. That meant the keyword was localized, which is incorrect. --- docs/csharp/linq/get-started/query-expression-basics.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/csharp/linq/get-started/query-expression-basics.md b/docs/csharp/linq/get-started/query-expression-basics.md index e0cc368e9ae8d..57260490e1ca3 100644 --- a/docs/csharp/linq/get-started/query-expression-basics.md +++ b/docs/csharp/linq/get-started/query-expression-basics.md @@ -45,7 +45,7 @@ In the previous example, the query is executed in the call to `Count`, because ` A *query expression* is a query expressed in query syntax. A query expression is a first-class language construct. It's just like any other expression and can be used in any context in which a C# expression is valid. A query expression consists of a set of clauses written in a declarative syntax similar to SQL or XQuery. Each clause in turn contains one or more C# expressions, and these expressions might themselves be either a query expression or contain a query expression. -A query expression must begin with a [from](../../language-reference/keywords/from-clause.md) clause and must end with a [select](../../language-reference/keywords/select-clause.md) or [group](../../language-reference/keywords/group-clause.md) clause. Between the first `from` clause and the last `select` or `group` clause, it can contain one or more of these optional clauses: [where](../../language-reference/keywords/where-clause.md), [orderby](../../language-reference/keywords/orderby-clause.md), [join](../../language-reference/keywords/join-clause.md), [let](../../language-reference/keywords/let-clause.md) and even another [from](../../language-reference/keywords/from-clause.md) clauses. You can also use the [into](../../language-reference/keywords/into.md) keyword to enable the result of a `join` or `group` clause to serve as the source for more query clauses in the same query expression. +A query expression must begin with a [from](../../language-reference/keywords/from-clause.md) clause and must end with a [select](../../language-reference/keywords/select-clause.md) or [group](../../language-reference/keywords/group-clause.md) clause. Between the first `from` clause and the last `select` or `group` clause, it can contain one or more of these optional clauses: [where](../../language-reference/keywords/where-clause.md), [orderby](../../language-reference/keywords/orderby-clause.md), [join](../../language-reference/keywords/join-clause.md), [let](../../language-reference/keywords/let-clause.md) and even another [from](../../language-reference/keywords/from-clause.md) clauses. You can also use the [`into`](../../language-reference/keywords/into.md) keyword to enable the result of a `join` or `group` clause to serve as the source for more query clauses in the same query expression. ### Query variable @@ -128,7 +128,7 @@ You can use the `into` keyword in a `select` or `group` clause to create a tempo :::code language="csharp" source="./snippets/SnippetApp/Basics.cs" id="basics14"::: -For more information, see [into](../../language-reference/keywords/into.md). +For more information, see [`into`](../../language-reference/keywords/into.md). ### Filtering, ordering, and joining @@ -156,7 +156,7 @@ Use the `join` clause to associate and/or combine elements from one data source :::code language="csharp" source="./snippets/SnippetApp/Basics.cs" id="basics17"::: -You can also perform a group join by storing the results of the `join` operation into a temporary variable by using the [into](../../language-reference/keywords/into.md) keyword. For more information, see [join clause](../../language-reference/keywords/join-clause.md). +You can also perform a group join by storing the results of the `join` operation into a temporary variable by using the [`into`](../../language-reference/keywords/into.md) keyword. For more information, see [join clause](../../language-reference/keywords/join-clause.md). #### The let clause From 7472d5c10f9425eabefd86591bee4ae51dc26bb1 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Tue, 28 Jan 2025 17:50:55 -0500 Subject: [PATCH 08/55] Fast follow to #44513 (#44565) Address commnts on #44513 submitted after it was merged. --- .../attributes/pseudo-attributes.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/csharp/language-reference/attributes/pseudo-attributes.md b/docs/csharp/language-reference/attributes/pseudo-attributes.md index 6634c52d8f1b5..ff9d7b692cb96 100644 --- a/docs/csharp/language-reference/attributes/pseudo-attributes.md +++ b/docs/csharp/language-reference/attributes/pseudo-attributes.md @@ -1,6 +1,6 @@ --- title: "Attributes interpreted by the compiler: Pseudo-attributes" -ms.date: 01/2/2025 +ms.date: 01/28/2025 description: "Learn about attributes you can add to code that are written to IL as modifiers. These custom attributes aren't emitted as attributes in the compiled output." --- # Custom attributes that generate flags or options in the Intermediate Language (IL) output @@ -16,7 +16,6 @@ You add these attributes to your code for the compiler to emit a specified Inter | | `flag` | Constructor arguments specify specific named flags such as `aggressiveinlining` or `forwardref`. These flags also specify the `native`, `managed`, or `optil` modifiers for the field. | | | `notserialized` | | | | `[opt]` | | -| | `[out]` | | | | `preservesig` | | | | `serializable` | | | | `auto`, `sequential`, or `explicit` | Layout options can be set using the parameters. | @@ -27,11 +26,12 @@ Some of these custom attributes are applied using other C# syntax rather than ad | Attribute | Comments | |--------------------------------------------------------------------------------------------------|----------| | | Specifies the default value for the parameter. Use the [default parameter syntax](../../methods.md#optional-parameters-and-arguments). | -| | Specifies the IL `[in]` modifier. Use the [`in`](../keywords/method-parameters.md#in-parameter-modifier) or [`ref readonly`](../keywords/method-parameters.md#ref-readonly-modifier). | +| | Specifies the IL `[in]` modifier. Use the [`in`](../keywords/method-parameters.md#in-parameter-modifier) or [`ref readonly`](../keywords/method-parameters.md#ref-readonly-modifier) modifiers. | +| | Specifies the IL `[out]` modifier. Use the [`out`](../keywords/method-parameters.md#out-parameter-modifier) modifier. | | | Specifies the IL `specialname` modifier. The compiler automatically adds this modifier for methods that require it. | -| | This attribute is required for the `delegate*` feature. The compiler adds it to any [`delegate*`](../unsafe-code.md#function-pointers) that requires its use. | +| | This attribute is required for the `delegate*` feature. The compiler adds it to any [`delegate*`](../unsafe-code.md#function-pointers) that requires its use. However, you must add this attribute to any method declaration when that method is assigned to a function pointer. | -The following custom attributes are generally disallowed in C# source. They're listed here to aid library authors who use reflection, and to ensure you don't create custom attributes with the same name. +The following attributes are generally disallowed in C# source. They're listed here to aid library authors who use reflection, and to ensure you don't create custom attributes with the same fully qualified name. | Attribute | Comments | |--------------------------------------------------------------------------------------------------|---------| @@ -52,4 +52,4 @@ The following custom attributes are generally disallowed in C# source. They're l | | This attribute indicates that the `required` modifier was placed on a member declaration. It's the encoding of the [required members](../keywords/required.md) language feature. | | | This attribute encodes tuple element names used in signatures. | -In addition, the compiler can generate a declaration for other attributes used internally. The compiler generates these in the namespace for its own use. Some aren't in the .NET Runtime libraries. Instead, the compiler synthesizes a definition for an `internal` type declaration in any assembly where the attribute is needed. +In addition, the compiler can generate a declaration for other attributes used internally. The compiler generates these attributes in the namespace for its own use. Some aren't in the .NET Runtime libraries. Instead, the compiler synthesizes a definition for an `internal` type declaration in any assembly where the attribute is needed. From b41b244567cb3a7e789511d07c97988808c5e067 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:09:56 +0000 Subject: [PATCH 09/55] Bump Microsoft.Extensions.VectorData.Abstractions (#44587) Bumps the dotnet group in /docs/ai/quickstarts/snippets/chat-with-data/azure-openai with 1 update: [Microsoft.Extensions.VectorData.Abstractions](https://github.com/microsoft/semantic-kernel). Updates `Microsoft.Extensions.VectorData.Abstractions` from 9.0.0-preview.1.24523.1 to 9.0.0-preview.1.25078.1 - [Release notes](https://github.com/microsoft/semantic-kernel/releases) - [Commits](https://github.com/microsoft/semantic-kernel/compare/vectordata-dotnet-9.0.0-preview.1.24523.1...vectordata-dotnet-9.0.0-preview.1.25078.1) --- updated-dependencies: - dependency-name: Microsoft.Extensions.VectorData.Abstractions dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../snippets/chat-with-data/azure-openai/VectorDataAI.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ai/quickstarts/snippets/chat-with-data/azure-openai/VectorDataAI.csproj b/docs/ai/quickstarts/snippets/chat-with-data/azure-openai/VectorDataAI.csproj index dd0092836ff35..ef8477b39f211 100644 --- a/docs/ai/quickstarts/snippets/chat-with-data/azure-openai/VectorDataAI.csproj +++ b/docs/ai/quickstarts/snippets/chat-with-data/azure-openai/VectorDataAI.csproj @@ -11,7 +11,7 @@ - + From da8205b4bd81f425741cb2a256bfa4bcac8d8aa9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:10:10 +0000 Subject: [PATCH 10/55] Bump the dotnet group (#44586) Bumps the dotnet group in /docs/core/tutorials/snippets/library-with-visual-studio/vb/StringLibraryTest with 2 updates: [MSTest.TestAdapter](https://github.com/microsoft/testfx) and [MSTest.TestFramework](https://github.com/microsoft/testfx). Updates `MSTest.TestAdapter` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) Updates `MSTest.TestFramework` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) --- updated-dependencies: - dependency-name: MSTest.TestAdapter dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: MSTest.TestFramework dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../vb/StringLibraryTest/StringLibraryTest.vbproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/core/tutorials/snippets/library-with-visual-studio/vb/StringLibraryTest/StringLibraryTest.vbproj b/docs/core/tutorials/snippets/library-with-visual-studio/vb/StringLibraryTest/StringLibraryTest.vbproj index d0faca03fc58e..0c893d923d96e 100644 --- a/docs/core/tutorials/snippets/library-with-visual-studio/vb/StringLibraryTest/StringLibraryTest.vbproj +++ b/docs/core/tutorials/snippets/library-with-visual-studio/vb/StringLibraryTest/StringLibraryTest.vbproj @@ -8,8 +8,8 @@ - - + + From f7717375f5b0d5dd5f670a8a0db83d55e4906386 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:11:49 +0000 Subject: [PATCH 11/55] Bump MSTest (#44588) Bumps the dotnet group in /docs/core/tutorials/snippets/library-with-visual-studio/csharp with 1 update: [MSTest](https://github.com/microsoft/testfx). Updates `MSTest` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) --- updated-dependencies: - dependency-name: MSTest dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../csharp/StringLibraryTest/StringLibraryTest.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/tutorials/snippets/library-with-visual-studio/csharp/StringLibraryTest/StringLibraryTest.csproj b/docs/core/tutorials/snippets/library-with-visual-studio/csharp/StringLibraryTest/StringLibraryTest.csproj index 4df69b78c1e59..db29dc4a7e20c 100644 --- a/docs/core/tutorials/snippets/library-with-visual-studio/csharp/StringLibraryTest/StringLibraryTest.csproj +++ b/docs/core/tutorials/snippets/library-with-visual-studio/csharp/StringLibraryTest/StringLibraryTest.csproj @@ -7,7 +7,7 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive From a03d788463b37b8e630bce8f42ce51ce134d9f86 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:14:33 +0000 Subject: [PATCH 12/55] Bump Microsoft.SemanticKernel (#44589) Bumps the dotnet group in /docs/ai/how-to/snippets/semantic-kernel with 1 update: [Microsoft.SemanticKernel](https://github.com/microsoft/semantic-kernel). Updates `Microsoft.SemanticKernel` from 1.33.0 to 1.35.0 - [Release notes](https://github.com/microsoft/semantic-kernel/releases) - [Commits](https://github.com/microsoft/semantic-kernel/compare/dotnet-1.33.0...dotnet-1.35.0) --- updated-dependencies: - dependency-name: Microsoft.SemanticKernel dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/ai/how-to/snippets/semantic-kernel/semantic-kernel.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ai/how-to/snippets/semantic-kernel/semantic-kernel.csproj b/docs/ai/how-to/snippets/semantic-kernel/semantic-kernel.csproj index d18bde0dded4c..9ecac6f44ee80 100644 --- a/docs/ai/how-to/snippets/semantic-kernel/semantic-kernel.csproj +++ b/docs/ai/how-to/snippets/semantic-kernel/semantic-kernel.csproj @@ -15,7 +15,7 @@ - + From 911d387a9308fcbf0d45d61da56b98035a2b751c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:22:07 +0000 Subject: [PATCH 13/55] Bump the dotnet group (#44590) Bumps the dotnet group in /docs/csharp/roslyn-sdk/tutorials/snippets/how-to-write-csharp-analyzer-code-fix with 2 updates: [MSTest.TestAdapter](https://github.com/microsoft/testfx) and [MSTest.TestFramework](https://github.com/microsoft/testfx). Updates `MSTest.TestAdapter` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) Updates `MSTest.TestFramework` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) --- updated-dependencies: - dependency-name: MSTest.TestAdapter dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: MSTest.TestFramework dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../MakeConst/MakeConst.Test/MakeConst.Test.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/csharp/roslyn-sdk/tutorials/snippets/how-to-write-csharp-analyzer-code-fix/MakeConst/MakeConst.Test/MakeConst.Test.csproj b/docs/csharp/roslyn-sdk/tutorials/snippets/how-to-write-csharp-analyzer-code-fix/MakeConst/MakeConst.Test/MakeConst.Test.csproj index e11483fd37274..c475466bb168e 100644 --- a/docs/csharp/roslyn-sdk/tutorials/snippets/how-to-write-csharp-analyzer-code-fix/MakeConst/MakeConst.Test/MakeConst.Test.csproj +++ b/docs/csharp/roslyn-sdk/tutorials/snippets/how-to-write-csharp-analyzer-code-fix/MakeConst/MakeConst.Test/MakeConst.Test.csproj @@ -9,8 +9,8 @@ - - + + From 1a78f0824e3cbe9778b85f5d8fdb9a4a2e1483af Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:24:19 +0000 Subject: [PATCH 14/55] Bump the dotnet group (#44592) Bumps the dotnet group in /docs/core/diagnostics/snippets/OTLP-Example/csharp with 5 updates: | Package | From | To | | --- | --- | --- | | [OpenTelemetry.Exporter.Console](https://github.com/open-telemetry/opentelemetry-dotnet) | `1.11.0` | `1.11.1` | | [OpenTelemetry.Exporter.OpenTelemetryProtocol](https://github.com/open-telemetry/opentelemetry-dotnet) | `1.11.0` | `1.11.1` | | [OpenTelemetry.Extensions.Hosting](https://github.com/open-telemetry/opentelemetry-dotnet) | `1.11.0` | `1.11.1` | | [OpenTelemetry.Instrumentation.AspNetCore](https://github.com/open-telemetry/opentelemetry-dotnet-contrib) | `1.10.1` | `1.11.0` | | [OpenTelemetry.Instrumentation.Http](https://github.com/open-telemetry/opentelemetry-dotnet-contrib) | `1.10.0` | `1.11.0` | Updates `OpenTelemetry.Exporter.Console` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) Updates `OpenTelemetry.Exporter.OpenTelemetryProtocol` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) Updates `OpenTelemetry.Extensions.Hosting` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) Updates `OpenTelemetry.Instrumentation.AspNetCore` from 1.10.1 to 1.11.0 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/releases) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/compare/Instrumentation.AspNetCore-1.10.1...Instrumentation.Http-1.11.0) Updates `OpenTelemetry.Instrumentation.Http` from 1.10.0 to 1.11.0 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/releases) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/compare/Exporter.Geneva-1.10.0...Instrumentation.Http-1.11.0) --- updated-dependencies: - dependency-name: OpenTelemetry.Exporter.Console dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: OpenTelemetry.Exporter.OpenTelemetryProtocol dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: OpenTelemetry.Extensions.Hosting dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: OpenTelemetry.Instrumentation.AspNetCore dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dotnet - dependency-name: OpenTelemetry.Instrumentation.Http dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../snippets/OTLP-Example/csharp/OTLP-Example.csproj | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/core/diagnostics/snippets/OTLP-Example/csharp/OTLP-Example.csproj b/docs/core/diagnostics/snippets/OTLP-Example/csharp/OTLP-Example.csproj index f0410394aa6e5..182a55465a77f 100644 --- a/docs/core/diagnostics/snippets/OTLP-Example/csharp/OTLP-Example.csproj +++ b/docs/core/diagnostics/snippets/OTLP-Example/csharp/OTLP-Example.csproj @@ -8,11 +8,11 @@ - - - - - + + + + + From 6996da48720b077d71c3f035575967f2c21a6ae3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:29:45 +0000 Subject: [PATCH 15/55] Bump the dotnet group (#44593) Bumps the dotnet group in /docs/core/extensions/snippets/logging/getting-started-open-telemetry with 2 updates: [Microsoft.Extensions.Logging](https://github.com/dotnet/runtime) and [OpenTelemetry.Exporter.OpenTelemetryProtocol](https://github.com/open-telemetry/opentelemetry-dotnet). Updates `Microsoft.Extensions.Logging` from 9.0.1 to 9.0.0 - [Release notes](https://github.com/dotnet/runtime/releases) - [Commits](https://github.com/dotnet/runtime/compare/v9.0.1...v9.0.0) Updates `OpenTelemetry.Exporter.OpenTelemetryProtocol` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) --- updated-dependencies: - dependency-name: Microsoft.Extensions.Logging dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: OpenTelemetry.Exporter.OpenTelemetryProtocol dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../getting-started-open-telemetry.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/extensions/snippets/logging/getting-started-open-telemetry/getting-started-open-telemetry.csproj b/docs/core/extensions/snippets/logging/getting-started-open-telemetry/getting-started-open-telemetry.csproj index 1d4141e4e12db..8dba1ead59c6c 100644 --- a/docs/core/extensions/snippets/logging/getting-started-open-telemetry/getting-started-open-telemetry.csproj +++ b/docs/core/extensions/snippets/logging/getting-started-open-telemetry/getting-started-open-telemetry.csproj @@ -9,7 +9,7 @@ - + From 3c3a3da15accf41d24342d6435c50d0f452ba1b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:32:04 +0000 Subject: [PATCH 16/55] Bump Microsoft.SemanticKernel (#44594) Bumps the dotnet group in /docs/ai/tutorials/snippets/llm-eval with 1 update: [Microsoft.SemanticKernel](https://github.com/microsoft/semantic-kernel). Updates `Microsoft.SemanticKernel` from 1.33.0 to 1.35.0 - [Release notes](https://github.com/microsoft/semantic-kernel/releases) - [Commits](https://github.com/microsoft/semantic-kernel/compare/dotnet-1.33.0...dotnet-1.35.0) --- updated-dependencies: - dependency-name: Microsoft.SemanticKernel dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/ai/tutorials/snippets/llm-eval/llm-eval.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ai/tutorials/snippets/llm-eval/llm-eval.csproj b/docs/ai/tutorials/snippets/llm-eval/llm-eval.csproj index f3009eff29ab1..65e78083fc992 100644 --- a/docs/ai/tutorials/snippets/llm-eval/llm-eval.csproj +++ b/docs/ai/tutorials/snippets/llm-eval/llm-eval.csproj @@ -12,7 +12,7 @@ - + From a1e7372a16db6a106d0638bf2e83bafb45d145c7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:33:02 +0000 Subject: [PATCH 17/55] Bump the dotnet group (#44595) Bumps the dotnet group in /docs/core/testing/snippets/order-unit-tests/csharp/MSTest.Project with 2 updates: [MSTest.TestAdapter](https://github.com/microsoft/testfx) and [MSTest.TestFramework](https://github.com/microsoft/testfx). Updates `MSTest.TestAdapter` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) Updates `MSTest.TestFramework` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) --- updated-dependencies: - dependency-name: MSTest.TestAdapter dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: MSTest.TestFramework dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../csharp/MSTest.Project/MSTest.Project.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/core/testing/snippets/order-unit-tests/csharp/MSTest.Project/MSTest.Project.csproj b/docs/core/testing/snippets/order-unit-tests/csharp/MSTest.Project/MSTest.Project.csproj index 73e6027192e35..ef96bf02d444f 100644 --- a/docs/core/testing/snippets/order-unit-tests/csharp/MSTest.Project/MSTest.Project.csproj +++ b/docs/core/testing/snippets/order-unit-tests/csharp/MSTest.Project/MSTest.Project.csproj @@ -9,8 +9,8 @@ - - + + all runtime; build; native; contentfiles; analyzers; buildtransitive From 64b58ade8cf5ff5ef31e6def362e0aa7767626d9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:35:17 +0000 Subject: [PATCH 18/55] Bump System.Linq.Dynamic.Core (#44596) Bumps the dotnet group in /docs/csharp/linq/snippets/HowToBuildDynamicQueries with 1 update: [System.Linq.Dynamic.Core](https://github.com/zzzprojects/System.Linq.Dynamic.Core). Updates `System.Linq.Dynamic.Core` from 1.6.0 to 1.6.0.1 - [Release notes](https://github.com/zzzprojects/System.Linq.Dynamic.Core/releases) - [Changelog](https://github.com/zzzprojects/System.Linq.Dynamic.Core/blob/master/CHANGELOG.md) - [Commits](https://github.com/zzzprojects/System.Linq.Dynamic.Core/compare/v1.6.0...v1.6.0.1) --- updated-dependencies: - dependency-name: System.Linq.Dynamic.Core dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../HowToBuildDynamicQueries/HowToBuildDynamicQueries.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/csharp/linq/snippets/HowToBuildDynamicQueries/HowToBuildDynamicQueries.csproj b/docs/csharp/linq/snippets/HowToBuildDynamicQueries/HowToBuildDynamicQueries.csproj index 991f76f069f83..62c5e05dba167 100644 --- a/docs/csharp/linq/snippets/HowToBuildDynamicQueries/HowToBuildDynamicQueries.csproj +++ b/docs/csharp/linq/snippets/HowToBuildDynamicQueries/HowToBuildDynamicQueries.csproj @@ -10,7 +10,7 @@ - + From f47482594de79ef1d7904d30bf5a16395670dc7a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:39:41 +0000 Subject: [PATCH 19/55] Bump the dotnet group (#44597) Bumps the dotnet group in /docs/core/testing/snippets/unit-testing-using-mstest/csharp/PrimeService.Tests with 2 updates: [MSTest.TestAdapter](https://github.com/microsoft/testfx) and [MSTest.TestFramework](https://github.com/microsoft/testfx). Updates `MSTest.TestAdapter` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) Updates `MSTest.TestFramework` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) --- updated-dependencies: - dependency-name: MSTest.TestAdapter dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: MSTest.TestFramework dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../csharp/PrimeService.Tests/PrimeService.Tests.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/core/testing/snippets/unit-testing-using-mstest/csharp/PrimeService.Tests/PrimeService.Tests.csproj b/docs/core/testing/snippets/unit-testing-using-mstest/csharp/PrimeService.Tests/PrimeService.Tests.csproj index 5a1cf43e4ea67..468f0334b12bb 100644 --- a/docs/core/testing/snippets/unit-testing-using-mstest/csharp/PrimeService.Tests/PrimeService.Tests.csproj +++ b/docs/core/testing/snippets/unit-testing-using-mstest/csharp/PrimeService.Tests/PrimeService.Tests.csproj @@ -8,8 +8,8 @@ - - + + all runtime; build; native; contentfiles; analyzers; buildtransitive From 5367d2af682f5a327fde45bbee65bd281ab4e3e3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:40:23 +0000 Subject: [PATCH 20/55] Bump OpenTelemetry.Exporter.Console (#44598) Bumps the dotnet group in /docs/core/extensions/snippets/ai/ConsoleAI.FunctionalityPipelines with 1 update: [OpenTelemetry.Exporter.Console](https://github.com/open-telemetry/opentelemetry-dotnet). Updates `OpenTelemetry.Exporter.Console` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) --- updated-dependencies: - dependency-name: OpenTelemetry.Exporter.Console dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../ConsoleAI.FunctionalityPipelines.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/extensions/snippets/ai/ConsoleAI.FunctionalityPipelines/ConsoleAI.FunctionalityPipelines.csproj b/docs/core/extensions/snippets/ai/ConsoleAI.FunctionalityPipelines/ConsoleAI.FunctionalityPipelines.csproj index ab64ab1f4841c..fc7d5d1946e9c 100644 --- a/docs/core/extensions/snippets/ai/ConsoleAI.FunctionalityPipelines/ConsoleAI.FunctionalityPipelines.csproj +++ b/docs/core/extensions/snippets/ai/ConsoleAI.FunctionalityPipelines/ConsoleAI.FunctionalityPipelines.csproj @@ -10,7 +10,7 @@ - + From 3c892c67dd3015b99c0c81eae034324f4f7cb275 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:41:29 +0000 Subject: [PATCH 21/55] Bump MSTest.TestFramework (#44600) Bumps the dotnet group in /docs/csharp/language-reference/operators/snippets/shared with 1 update: [MSTest.TestFramework](https://github.com/microsoft/testfx). Updates `MSTest.TestFramework` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) --- updated-dependencies: - dependency-name: MSTest.TestFramework dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../operators/snippets/shared/operators.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/csharp/language-reference/operators/snippets/shared/operators.csproj b/docs/csharp/language-reference/operators/snippets/shared/operators.csproj index 175da6f0da578..390b98aae042c 100644 --- a/docs/csharp/language-reference/operators/snippets/shared/operators.csproj +++ b/docs/csharp/language-reference/operators/snippets/shared/operators.csproj @@ -10,7 +10,7 @@ - + From 4dcb6f3d003a433a3bed2d2f974a66a5a093ebfc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:41:50 +0000 Subject: [PATCH 22/55] Bump OpenTelemetry.Exporter.Console (#44599) Bumps the dotnet group in /docs/core/extensions/snippets/ai/ConsoleAI.UseTelemetry with 1 update: [OpenTelemetry.Exporter.Console](https://github.com/open-telemetry/opentelemetry-dotnet). Updates `OpenTelemetry.Exporter.Console` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) --- updated-dependencies: - dependency-name: OpenTelemetry.Exporter.Console dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../ai/ConsoleAI.UseTelemetry/ConsoleAI.UseTelemetry.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/extensions/snippets/ai/ConsoleAI.UseTelemetry/ConsoleAI.UseTelemetry.csproj b/docs/core/extensions/snippets/ai/ConsoleAI.UseTelemetry/ConsoleAI.UseTelemetry.csproj index bb178fe3d7cc8..61797f032b737 100644 --- a/docs/core/extensions/snippets/ai/ConsoleAI.UseTelemetry/ConsoleAI.UseTelemetry.csproj +++ b/docs/core/extensions/snippets/ai/ConsoleAI.UseTelemetry/ConsoleAI.UseTelemetry.csproj @@ -8,7 +8,7 @@ - + From 3c20b73c6e5f78bddd4116f431a23117232be364 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:49:01 +0000 Subject: [PATCH 23/55] Bump the dotnet group (#44601) Bumps the dotnet group in /docs/core/diagnostics/snippets/OTel-Prometheus-Grafana-Jaeger/csharp with 5 updates: | Package | From | To | | --- | --- | --- | | [OpenTelemetry.Exporter.Console](https://github.com/open-telemetry/opentelemetry-dotnet) | `1.11.0` | `1.11.1` | | [OpenTelemetry.Exporter.OpenTelemetryProtocol](https://github.com/open-telemetry/opentelemetry-dotnet) | `1.11.0` | `1.11.1` | | [OpenTelemetry.Exporter.Zipkin](https://github.com/open-telemetry/opentelemetry-dotnet) | `1.11.0` | `1.11.1` | | [OpenTelemetry.Extensions.Hosting](https://github.com/open-telemetry/opentelemetry-dotnet) | `1.11.0` | `1.11.1` | | [OpenTelemetry.Instrumentation.AspNetCore](https://github.com/open-telemetry/opentelemetry-dotnet-contrib) | `1.10.1` | `1.11.0` | Updates `OpenTelemetry.Exporter.Console` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) Updates `OpenTelemetry.Exporter.OpenTelemetryProtocol` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) Updates `OpenTelemetry.Exporter.Zipkin` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) Updates `OpenTelemetry.Extensions.Hosting` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) Updates `OpenTelemetry.Instrumentation.AspNetCore` from 1.10.1 to 1.11.0 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/releases) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/compare/Instrumentation.AspNetCore-1.10.1...Instrumentation.Http-1.11.0) --- updated-dependencies: - dependency-name: OpenTelemetry.Exporter.Console dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: OpenTelemetry.Exporter.OpenTelemetryProtocol dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: OpenTelemetry.Exporter.Zipkin dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: OpenTelemetry.Extensions.Hosting dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: OpenTelemetry.Instrumentation.AspNetCore dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../csharp/OTel-Prometheus-Grafana-Jaeger.csproj | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/core/diagnostics/snippets/OTel-Prometheus-Grafana-Jaeger/csharp/OTel-Prometheus-Grafana-Jaeger.csproj b/docs/core/diagnostics/snippets/OTel-Prometheus-Grafana-Jaeger/csharp/OTel-Prometheus-Grafana-Jaeger.csproj index eb91f1e89a5c8..59286f4d69f4e 100644 --- a/docs/core/diagnostics/snippets/OTel-Prometheus-Grafana-Jaeger/csharp/OTel-Prometheus-Grafana-Jaeger.csproj +++ b/docs/core/diagnostics/snippets/OTel-Prometheus-Grafana-Jaeger/csharp/OTel-Prometheus-Grafana-Jaeger.csproj @@ -13,12 +13,12 @@ - - + + - - - + + + From 013600fd1b9faf36364afc04df67986de636eade Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:49:17 +0000 Subject: [PATCH 24/55] Bump the dotnet group (#44602) Bumps the dotnet group in /docs/core/tutorials/snippets/library-with-visual-studio/csharp/StringLibraryTestNet8 with 2 updates: [MSTest.TestAdapter](https://github.com/microsoft/testfx) and [MSTest.TestFramework](https://github.com/microsoft/testfx). Updates `MSTest.TestAdapter` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) Updates `MSTest.TestFramework` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) --- updated-dependencies: - dependency-name: MSTest.TestAdapter dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: MSTest.TestFramework dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../csharp/StringLibraryTestNet8/StringLibraryTest.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/core/tutorials/snippets/library-with-visual-studio/csharp/StringLibraryTestNet8/StringLibraryTest.csproj b/docs/core/tutorials/snippets/library-with-visual-studio/csharp/StringLibraryTestNet8/StringLibraryTest.csproj index 016809ddd6eab..318bf6c823a82 100644 --- a/docs/core/tutorials/snippets/library-with-visual-studio/csharp/StringLibraryTestNet8/StringLibraryTest.csproj +++ b/docs/core/tutorials/snippets/library-with-visual-studio/csharp/StringLibraryTestNet8/StringLibraryTest.csproj @@ -11,8 +11,8 @@ - - + + From 1733c63d2c0269dcda93bb684a3e32bae48db511 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:51:40 +0000 Subject: [PATCH 25/55] Bump the dotnet group (#44603) Bumps the dotnet group in /samples/snippets/core/testing/unit-testing-vb-mstest/vb with 2 updates: [MSTest.TestAdapter](https://github.com/microsoft/testfx) and [MSTest.TestFramework](https://github.com/microsoft/testfx). Updates `MSTest.TestAdapter` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) Updates `MSTest.TestFramework` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) --- updated-dependencies: - dependency-name: MSTest.TestAdapter dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet - dependency-name: MSTest.TestFramework dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../vb/PrimeService.Tests/PrimeService.Tests.vbproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/samples/snippets/core/testing/unit-testing-vb-mstest/vb/PrimeService.Tests/PrimeService.Tests.vbproj b/samples/snippets/core/testing/unit-testing-vb-mstest/vb/PrimeService.Tests/PrimeService.Tests.vbproj index a605cf79806ad..3df836168205e 100644 --- a/samples/snippets/core/testing/unit-testing-vb-mstest/vb/PrimeService.Tests/PrimeService.Tests.vbproj +++ b/samples/snippets/core/testing/unit-testing-vb-mstest/vb/PrimeService.Tests/PrimeService.Tests.vbproj @@ -8,8 +8,8 @@ - - + + From 7874629fff285f7979606e1058ca186520f549da Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:53:06 +0000 Subject: [PATCH 26/55] Bump github/codeql-action from 3.28.2 to 3.28.6 (#44604) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.28.2 to 3.28.6. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/d68b2d4edb4189fd2a5366ac14e72027bd4b37dd...17a820bf2e43b47be2c72b39cc905417bc1ab6d0) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/scorecards.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index 89d7f8db95759..b92c62a2c2829 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -71,6 +71,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@d68b2d4edb4189fd2a5366ac14e72027bd4b37dd # v3.28.2 + uses: github/codeql-action/upload-sarif@17a820bf2e43b47be2c72b39cc905417bc1ab6d0 # v3.28.6 with: sarif_file: results.sarif From 2910dcb3f4b57c703fde9b2e8bc2560912097386 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 12:57:31 +0000 Subject: [PATCH 27/55] Bump Microsoft.Extensions.VectorData.Abstractions (#44605) Bumps the dotnet group in /docs/ai/quickstarts/snippets/chat-with-data/openai with 1 update: [Microsoft.Extensions.VectorData.Abstractions](https://github.com/microsoft/semantic-kernel). Updates `Microsoft.Extensions.VectorData.Abstractions` from 9.0.0-preview.1.24523.1 to 9.0.0-preview.1.25078.1 - [Release notes](https://github.com/microsoft/semantic-kernel/releases) - [Commits](https://github.com/microsoft/semantic-kernel/compare/vectordata-dotnet-9.0.0-preview.1.24523.1...vectordata-dotnet-9.0.0-preview.1.25078.1) --- updated-dependencies: - dependency-name: Microsoft.Extensions.VectorData.Abstractions dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../snippets/chat-with-data/openai/VectorDataAI.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ai/quickstarts/snippets/chat-with-data/openai/VectorDataAI.csproj b/docs/ai/quickstarts/snippets/chat-with-data/openai/VectorDataAI.csproj index 67945c8566316..50950a4544b8a 100644 --- a/docs/ai/quickstarts/snippets/chat-with-data/openai/VectorDataAI.csproj +++ b/docs/ai/quickstarts/snippets/chat-with-data/openai/VectorDataAI.csproj @@ -9,7 +9,7 @@ - + From 762089c8879d02cdbae95e9c36e44cd57ebcf258 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 13:00:35 +0000 Subject: [PATCH 28/55] Bump MSTest (#44606) Bumps the dotnet group in /docs/core/testing/snippets/testcontext/csharp with 1 update: [MSTest](https://github.com/microsoft/testfx). Updates `MSTest` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) --- updated-dependencies: - dependency-name: MSTest dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- docs/core/testing/snippets/testcontext/csharp/project.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/testing/snippets/testcontext/csharp/project.csproj b/docs/core/testing/snippets/testcontext/csharp/project.csproj index f73e1db55491b..33d131d03141d 100644 --- a/docs/core/testing/snippets/testcontext/csharp/project.csproj +++ b/docs/core/testing/snippets/testcontext/csharp/project.csproj @@ -8,7 +8,7 @@ - + From f1262156619b608c4eeadc32beeb50f00e6551b5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 13:03:59 +0000 Subject: [PATCH 29/55] Bump MSTest.TestFramework (#44607) Bumps the dotnet group in /docs/core/whats-new/snippets/dotnet-8/csharp/ConsoleApp with 1 update: [MSTest.TestFramework](https://github.com/microsoft/testfx). Updates `MSTest.TestFramework` from 3.7.2 to 3.7.3 - [Release notes](https://github.com/microsoft/testfx/releases) - [Changelog](https://github.com/microsoft/testfx/blob/main/docs/Changelog.md) - [Commits](https://github.com/microsoft/testfx/compare/v3.7.2...v3.7.3) --- updated-dependencies: - dependency-name: MSTest.TestFramework dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../snippets/dotnet-8/csharp/ConsoleApp/Project.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/whats-new/snippets/dotnet-8/csharp/ConsoleApp/Project.csproj b/docs/core/whats-new/snippets/dotnet-8/csharp/ConsoleApp/Project.csproj index 94172f57013f0..634e27d4da332 100644 --- a/docs/core/whats-new/snippets/dotnet-8/csharp/ConsoleApp/Project.csproj +++ b/docs/core/whats-new/snippets/dotnet-8/csharp/ConsoleApp/Project.csproj @@ -12,7 +12,7 @@ - + From 55a932f2e0f0965b344341f199b3266c57db71a3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jan 2025 13:05:55 +0000 Subject: [PATCH 30/55] Bump OpenTelemetry.Exporter.Console (#44608) Bumps the dotnet group in /docs/core/extensions/snippets/ai/ConsoleAI.CustomEmbeddingsMiddle with 1 update: [OpenTelemetry.Exporter.Console](https://github.com/open-telemetry/opentelemetry-dotnet). Updates `OpenTelemetry.Exporter.Console` from 1.11.0 to 1.11.1 - [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md) - [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.11.0...core-1.11.1) --- updated-dependencies: - dependency-name: OpenTelemetry.Exporter.Console dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dotnet ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../ConsoleAI.CustomEmbeddingsMiddle.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/extensions/snippets/ai/ConsoleAI.CustomEmbeddingsMiddle/ConsoleAI.CustomEmbeddingsMiddle.csproj b/docs/core/extensions/snippets/ai/ConsoleAI.CustomEmbeddingsMiddle/ConsoleAI.CustomEmbeddingsMiddle.csproj index 6f2d3980a233b..0b4923fd8f97a 100644 --- a/docs/core/extensions/snippets/ai/ConsoleAI.CustomEmbeddingsMiddle/ConsoleAI.CustomEmbeddingsMiddle.csproj +++ b/docs/core/extensions/snippets/ai/ConsoleAI.CustomEmbeddingsMiddle/ConsoleAI.CustomEmbeddingsMiddle.csproj @@ -9,7 +9,7 @@ - + From e5cfd5345900f3f87f33266973c71257b8f37a12 Mon Sep 17 00:00:00 2001 From: Bartosz Klonowski <70535775+BartoszKlonowski@users.noreply.github.com> Date: Wed, 29 Jan 2025 14:30:17 +0100 Subject: [PATCH 31/55] Use 'unsafe' explicitly to have it in snippets (#44573) --- .../snippets/unsafe-code/FunctionPointers.cs | 27 ++++++++++--------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/docs/csharp/language-reference/snippets/unsafe-code/FunctionPointers.cs b/docs/csharp/language-reference/snippets/unsafe-code/FunctionPointers.cs index 760730c1807bc..b9bb8b16b349e 100644 --- a/docs/csharp/language-reference/snippets/unsafe-code/FunctionPointers.cs +++ b/docs/csharp/language-reference/snippets/unsafe-code/FunctionPointers.cs @@ -1,6 +1,6 @@ namespace UnsafeCodePointers; -public unsafe class FunctionPointers +public class FunctionPointers { public static void PointerExamples() { @@ -10,35 +10,36 @@ public static void PointerExamples() Console.WriteLine(); // - static int localMultiply(int x, int y) => x * y; - int product = UnsafeCombine(&localMultiply, 3, 4); + int product = 0; + unsafe + { + static int localMultiply(int x, int y) => x * y; + product = UnsafeCombine(&localMultiply, 3, 4); + } // Console.WriteLine(product); - - } // public static T Combine(Func combinator, T left, T right) => combinator(left, right); - public static T UnsafeCombine(delegate* combinator, T left, T right) => + public static unsafe T UnsafeCombine(delegate* combinator, T left, T right) => combinator(left, right); // // - public static T ManagedCombine(delegate* managed combinator, T left, T right) => + public static unsafe T ManagedCombine(delegate* managed combinator, T left, T right) => combinator(left, right); - public static T CDeclCombine(delegate* unmanaged[Cdecl] combinator, T left, T right) => + public static unsafe T CDeclCombine(delegate* unmanaged[Cdecl] combinator, T left, T right) => combinator(left, right); - public static T StdcallCombine(delegate* unmanaged[Stdcall] combinator, T left, T right) => + public static unsafe T StdcallCombine(delegate* unmanaged[Stdcall] combinator, T left, T right) => combinator(left, right); - public static T FastcallCombine(delegate* unmanaged[Fastcall] combinator, T left, T right) => + public static unsafe T FastcallCombine(delegate* unmanaged[Fastcall] combinator, T left, T right) => combinator(left, right); - public static T ThiscallCombine(delegate* unmanaged[Thiscall] combinator, T left, T right) => + public static unsafe T ThiscallCombine(delegate* unmanaged[Thiscall] combinator, T left, T right) => combinator(left, right); - public static T UnmanagedCombine(delegate* unmanaged combinator, T left, T right) => + public static unsafe T UnmanagedCombine(delegate* unmanaged combinator, T left, T right) => combinator(left, right); // - } From 444d1dfe0425d5c9e7bb777c3e83cc6c08806dad Mon Sep 17 00:00:00 2001 From: Azure SDK Bot <53356347+azure-sdk@users.noreply.github.com> Date: Wed, 29 Jan 2025 05:32:12 -0800 Subject: [PATCH 32/55] Update package index with latest published versions (#44579) --- docs/azure/includes/dotnet-all.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/azure/includes/dotnet-all.md b/docs/azure/includes/dotnet-all.md index 8977f1518fb1c..8a03752f58333 100644 --- a/docs/azure/includes/dotnet-all.md +++ b/docs/azure/includes/dotnet-all.md @@ -400,7 +400,7 @@ | Common | NuGet [2.2.1](https://www.nuget.org/packages/Microsoft.Azure.Common/2.2.1) | | | | Common - Dependencies | NuGet [1.0.0](https://www.nuget.org/packages/Microsoft.Azure.Common.Dependencies/1.0.0) | | | | Computer Vision | NuGet [7.0.1](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Vision.ComputerVision/7.0.1) | | GitHub [7.0.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Vision.ComputerVision_6.0.0-preview.1/sdk/cognitiveservices/Vision.ComputerVision) | -| Cosmos DB | NuGet [3.42.0](https://www.nuget.org/packages/Microsoft.Azure.Cosmos/3.42.0)
NuGet [3.47.0-preview.0](https://www.nuget.org/packages/Microsoft.Azure.Cosmos/3.47.0-preview.0) | [docs](https://learn.microsoft.com/dotnet/api/overview/azure/cosmosdb) | GitHub [3.42.0](https://github.com/Azure/azure-cosmos-dotnet-v3/tree/3.12.0/Microsoft.Azure.Cosmos) | +| Cosmos DB | NuGet [3.42.0](https://www.nuget.org/packages/Microsoft.Azure.Cosmos/3.42.0)
NuGet [3.47.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.Cosmos/3.47.0-preview.1) | [docs](https://learn.microsoft.com/dotnet/api/overview/azure/cosmosdb) | GitHub [3.42.0](https://github.com/Azure/azure-cosmos-dotnet-v3/tree/3.12.0/Microsoft.Azure.Cosmos) | | Custom Image Search | NuGet [2.1.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.BingCustomImageSearch/2.1.0-preview.1) | | GitHub [2.1.0-preview.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Search.BingCustomImageSearch_2.1.0-preview.1/sdk/cognitiveservices/Search.BingCustomImageSearch) | | Custom Image Search | NuGet [2.0.0](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.CustomImageSearch/2.0.0) | | | | Custom Search | NuGet [2.1.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.BingCustomSearch/2.1.0-preview.1) | | GitHub [2.1.0-preview.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Search.BingCustomSearch_2.1.0-preview.1/sdk/cognitiveservices/Search.BingCustomSearch) | @@ -528,14 +528,14 @@ | Microsoft.Azure.Functions.Worker.Extensions.CosmosDB | NuGet [4.11.0](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.CosmosDB/4.11.0) | | | | Microsoft.Azure.Functions.Worker.Extensions.EventGrid | NuGet [3.4.2](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.EventGrid/3.4.2) | | | | Microsoft.Azure.Functions.Worker.Extensions.EventHubs | NuGet [6.3.6](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.EventHubs/6.3.6) | | | -| Microsoft.Azure.Functions.Worker.Extensions.Http | NuGet [3.2.0](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Http/3.2.0) | | | +| Microsoft.Azure.Functions.Worker.Extensions.Http | NuGet [3.3.0](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Http/3.3.0) | | | | Microsoft.Azure.Functions.Worker.Extensions.Kafka | NuGet [4.0.0](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Kafka/4.0.0) | | | | Microsoft.Azure.Functions.Worker.Extensions.Kusto | NuGet [1.0.11-Preview](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Kusto/1.0.11-Preview) | | | | Microsoft.Azure.Functions.Worker.Extensions.OpenApi | NuGet [1.4.0](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.OpenApi/1.4.0)
NuGet [2.0.0-preview2](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.OpenApi/2.0.0-preview2) | | | | Microsoft.Azure.Functions.Worker.Extensions.RabbitMQ | NuGet [2.0.3](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.RabbitMQ/2.0.3) | | | | Microsoft.Azure.Functions.Worker.Extensions.Rpc | NuGet [1.0.1](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Rpc/1.0.1) | | | | Microsoft.Azure.Functions.Worker.Extensions.SendGrid | NuGet [3.0.3](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.SendGrid/3.0.3) | | | -| Microsoft.Azure.Functions.Worker.Extensions.ServiceBus | NuGet [5.22.0](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.ServiceBus/5.22.0) | | | +| Microsoft.Azure.Functions.Worker.Extensions.ServiceBus | NuGet [5.22.1](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.ServiceBus/5.22.1) | | | | Microsoft.Azure.Functions.Worker.Extensions.SignalRService | NuGet [1.14.1](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.SignalRService/1.14.1) | | | | Microsoft.Azure.Functions.Worker.Extensions.Sql | NuGet [3.1.284](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Sql/3.1.284) | | | | Microsoft.Azure.Functions.Worker.Extensions.Storage | NuGet [6.6.0](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Storage/6.6.0) | | | From a5f225fd47e68f5a3a81f396af4035c43512a989 Mon Sep 17 00:00:00 2001 From: Youssef Victor Date: Wed, 29 Jan 2025 14:36:43 +0100 Subject: [PATCH 33/55] Update MSTEST0026 doc to reflect enabled by default change in 3.8 (#44585) --- docs/core/testing/mstest-analyzers/mstest0026.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/testing/mstest-analyzers/mstest0026.md b/docs/core/testing/mstest-analyzers/mstest0026.md index d78166cd59f47..56a5a088e52da 100644 --- a/docs/core/testing/mstest-analyzers/mstest0026.md +++ b/docs/core/testing/mstest-analyzers/mstest0026.md @@ -19,7 +19,7 @@ ms.author: faisalhafeez | **Title** | Avoid conditional access in assertions | | **Category** | Usage | | **Fix is breaking or non-breaking** | Non-breaking | -| **Enabled by default** | Yes | +| **Enabled by default** | Yes (from 3.5 to 3.7). No (starting with 3.8) | | **Default severity** | Info | | **Introduced in version** | 3.5.0 | | **Is there a code fix** | No | From 1ab103fd4a09a7830ded46361e71aea8576078f5 Mon Sep 17 00:00:00 2001 From: Adit Sheth Date: Wed, 29 Jan 2025 05:37:01 -0800 Subject: [PATCH 34/55] Fixed bug 34928. (#44584) Co-authored-by: Adit Sheth --- docs/fsharp/language-reference/parameters-and-arguments.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/fsharp/language-reference/parameters-and-arguments.md b/docs/fsharp/language-reference/parameters-and-arguments.md index 93432f0a2e943..2a0f76f1c9d91 100644 --- a/docs/fsharp/language-reference/parameters-and-arguments.md +++ b/docs/fsharp/language-reference/parameters-and-arguments.md @@ -214,6 +214,8 @@ Occasionally it is necessary to define a function that takes an arbitrary number In F#, parameter arrays can only be defined in methods. They cannot be used in standalone functions or functions that are defined in modules. +However, functions like `printfn` achieve similar behavior by using format specifiers and type inference to handle multiple arguments dynamically. The `printfn` function does not rely on parameter arrays; instead, it uses F#'s type-safe formatting mechanism to process varying numbers of arguments while ensuring compile-time type checking. + You define a parameter array by using the `ParamArray` attribute. The `ParamArray` attribute can only be applied to the last parameter. The following code illustrates both calling a .NET method that takes a parameter array and the definition of a type in F# that has a method that takes a parameter array. From e6f894d0fbaffec957a6f0040bfd15670f7e70cc Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Wed, 29 Jan 2025 07:46:24 -0800 Subject: [PATCH 35/55] [Chore] Fix build suggestions 1/28 (#44582) --- docfx.json | 1 - .../nosql-database-persistence-infrastructure.md | 9 +++++---- docs/azure/includes/dotnet-all.md | 14 +++++++------- docs/orleans/tutorials-and-samples/index.md | 2 +- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/docfx.json b/docfx.json index 6af826adfd294..2ab4a468a1a6b 100644 --- a/docfx.json +++ b/docfx.json @@ -475,7 +475,6 @@ "docs/standard/collections/**/**.md": "dapine", "docs/standard/commandline/**/**.md": "tdykstra", "docs/standard/data/**/**.md": "gewarren", - "docs/standard/data/sqlite/**/**.md": "avickers", "docs/standard/datetime/**/**.md": "adegeo", "docs/standard/design-guidelines/**/**.md": "kcwalina", "docs/standard/events/**/**.md": "dapine", diff --git a/docs/architecture/microservices/microservice-ddd-cqrs-patterns/nosql-database-persistence-infrastructure.md b/docs/architecture/microservices/microservice-ddd-cqrs-patterns/nosql-database-persistence-infrastructure.md index 6d7361aa888cb..78d429e1014de 100644 --- a/docs/architecture/microservices/microservice-ddd-cqrs-patterns/nosql-database-persistence-infrastructure.md +++ b/docs/architecture/microservices/microservice-ddd-cqrs-patterns/nosql-database-persistence-infrastructure.md @@ -150,13 +150,14 @@ For further comparison between simply using MongoDB versus Cosmos DB in the clou ### Analyze your approach for production applications: MongoDB API vs. Cosmos DB API -In eShopOnContainers, we're using MongoDB API because our priority was fundamentally to have a consistent dev/test environment using a NoSQL database that could also work with Azure Cosmos DB. +eShopOnContainers uses MongoDB API because the priority was fundamentally to have a consistent dev/test environment using a NoSQL database that could also work with Azure Cosmos DB. -However, if you are planning to use MongoDB API to access Azure Cosmos DB in Azure for production applications, you should analyze the differences in capabilities and performance when using MongoDB API to access Azure Cosmos DB databases compared to using the native Azure Cosmos DB API. If it is similar you can use MongoDB API and you get the benefit of supporting two NoSQL database engines at the same time. +However, if you're planning to use MongoDB API to access Azure Cosmos DB in Azure for production applications, you should analyze the differences in capabilities and performance when using MongoDB API to access Azure Cosmos DB databases compared to using the native Azure Cosmos DB API. If it's similar, you can use MongoDB API and get the benefit of supporting two NoSQL database engines at the same time. -You could also use MongoDB clusters as the production database in Azure's cloud, too, with [MongoDB Azure Service](https://www.mongodb.com/scale/mongodb-azure-service). But that is not a PaaS service provided by Microsoft. In this case, Azure is just hosting that solution coming from MongoDB. +You could also use MongoDB clusters as the production database in Azure's cloud, too, with [MongoDB Atlas on +Microsoft Azure](https://www.mongodb.com/products/platform/atlas-cloud-providers/azure). But that is not a PaaS service provided by Microsoft. In this case, Azure is just hosting that solution coming from MongoDB. -Basically, this is just a disclaimer stating that you shouldn't always use MongoDB API against Azure Cosmos DB, as we did in eShopOnContainers because it was a convenient choice for Linux containers. The decision should be based on the specific needs and tests you need to do for your production application. +Basically, this is just a disclaimer to say that you shouldn't always use MongoDB API against Azure Cosmos DB. eShopOnContainers uses it because it was a convenient choice for Linux containers. The decision should be based on the specific needs and tests you need to do for your production application. ### The code: Use MongoDB API in .NET applications diff --git a/docs/azure/includes/dotnet-all.md b/docs/azure/includes/dotnet-all.md index 8a03752f58333..84dafa46137df 100644 --- a/docs/azure/includes/dotnet-all.md +++ b/docs/azure/includes/dotnet-all.md @@ -400,7 +400,7 @@ | Common | NuGet [2.2.1](https://www.nuget.org/packages/Microsoft.Azure.Common/2.2.1) | | | | Common - Dependencies | NuGet [1.0.0](https://www.nuget.org/packages/Microsoft.Azure.Common.Dependencies/1.0.0) | | | | Computer Vision | NuGet [7.0.1](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Vision.ComputerVision/7.0.1) | | GitHub [7.0.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Vision.ComputerVision_6.0.0-preview.1/sdk/cognitiveservices/Vision.ComputerVision) | -| Cosmos DB | NuGet [3.42.0](https://www.nuget.org/packages/Microsoft.Azure.Cosmos/3.42.0)
NuGet [3.47.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.Cosmos/3.47.0-preview.1) | [docs](https://learn.microsoft.com/dotnet/api/overview/azure/cosmosdb) | GitHub [3.42.0](https://github.com/Azure/azure-cosmos-dotnet-v3/tree/3.12.0/Microsoft.Azure.Cosmos) | +| Cosmos DB | NuGet [3.42.0](https://www.nuget.org/packages/Microsoft.Azure.Cosmos/3.42.0)
NuGet [3.47.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.Cosmos/3.47.0-preview.1) | [docs](/dotnet/api/overview/azure/cosmosdb) | GitHub [3.42.0](https://github.com/Azure/azure-cosmos-dotnet-v3/tree/3.12.0/Microsoft.Azure.Cosmos) | | Custom Image Search | NuGet [2.1.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.BingCustomImageSearch/2.1.0-preview.1) | | GitHub [2.1.0-preview.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Search.BingCustomImageSearch_2.1.0-preview.1/sdk/cognitiveservices/Search.BingCustomImageSearch) | | Custom Image Search | NuGet [2.0.0](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.CustomImageSearch/2.0.0) | | | | Custom Search | NuGet [2.1.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.BingCustomSearch/2.1.0-preview.1) | | GitHub [2.1.0-preview.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Search.BingCustomSearch_2.1.0-preview.1/sdk/cognitiveservices/Search.BingCustomSearch) | @@ -416,15 +416,15 @@ | Entity Search | NuGet [2.0.0](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.EntitySearch/2.0.0) | | | | Event Hubs - Service Fabric Processor | NuGet [0.5.4](https://www.nuget.org/packages/Microsoft.Azure.EventHubs.ServiceFabricProcessor/0.5.4) | | GitHub [0.5.4](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.EventHubs.ServiceFabricProcessor_0.5.4/sdk/eventhub/Microsoft.Azure.EventHubs.ServiceFabricProcessor/) | | Face | NuGet [2.8.0-preview.3](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Vision.Face/2.8.0-preview.3) | | GitHub [2.8.0-preview.3](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Vision.Face_2.6.0-preview.1/sdk/cognitiveservices/Vision.Face) | -| Feature Management | NuGet [3.0.0](https://www.nuget.org/packages/Microsoft.FeatureManagement/3.0.0) | [docs](https://learn.microsoft.com/dotnet/api/microsoft.featuremanagement) | | +| Feature Management | NuGet [3.0.0](https://www.nuget.org/packages/Microsoft.FeatureManagement/3.0.0) | [docs](/dotnet/api/microsoft.featuremanagement) | | | Gallery | NuGet [2.6.2-preview](https://www.nuget.org/packages/Microsoft.Azure.Gallery/2.6.2-preview) | | | | HDInsight - Job | NuGet [3.0.0-preview.3](https://www.nuget.org/packages/Microsoft.Azure.HDInsight.Job/3.0.0-preview.3) | | GitHub [3.0.0-preview.3](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.HDInsight.Job_3.0.0-preview.3/sdk/hdinsight/Microsoft.Azure.HDInsight.Job/) | | Image Search | NuGet [2.1.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.BingImageSearch/2.1.0-preview.1) | | GitHub [2.1.0-preview.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Search.BingImageSearch_2.1.0-preview.1/sdk/cognitiveservices/Search.BingImageSearch) | | Image Search | NuGet [2.0.0](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.ImageSearch/2.0.0) | | | | IoT Edge Function | NuGet [3.5.3](https://www.nuget.org/packages/Microsoft.Azure.IoT.Edge.Function/3.5.3) | | | | IoT Plug and Play - Devices Client | NuGet [1.42.3](https://www.nuget.org/packages/Microsoft.Azure.Devices.Client/1.42.3)
NuGet [2.0.0-preview007](https://www.nuget.org/packages/Microsoft.Azure.Devices.Client/2.0.0-preview007) | | | -| Kusto Data | NuGet [9.3.1](https://www.nuget.org/packages/Microsoft.Azure.Kusto.Data/9.3.1) | [docs](https://learn.microsoft.com/azure/data-explorer/kusto/api/netfx/about-kusto-data) | GitHub [9.3.1](https://github.com/Azure/azure-kusto-dotnet) | -| Kusto Ingest | NuGet [9.3.1](https://www.nuget.org/packages/Microsoft.Azure.Kusto.Ingest/9.3.1) | [docs](https://learn.microsoft.com/azure/data-explorer/kusto/api/netfx/about-kusto-ingest) | GitHub [9.3.1](https://github.com/Azure/azure-kusto-dotnet) | +| Kusto Data | NuGet [9.3.1](https://www.nuget.org/packages/Microsoft.Azure.Kusto.Data/9.3.1) | [docs](/azure/data-explorer/kusto/api/netfx/about-kusto-data) | GitHub [9.3.1](https://github.com/Azure/azure-kusto-dotnet) | +| Kusto Ingest | NuGet [9.3.1](https://www.nuget.org/packages/Microsoft.Azure.Kusto.Ingest/9.3.1) | [docs](/azure/data-explorer/kusto/api/netfx/about-kusto-ingest) | GitHub [9.3.1](https://github.com/Azure/azure-kusto-dotnet) | | Local Search | NuGet [1.0.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.BingLocalSearch/1.0.0-preview.1) | | GitHub [1.0.0-preview.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Search.BingLocalSearch_1.0.0-preview.1/sdk/cognitiveservices/Search.BingLocalSearch) | | Local Search | NuGet [0.9.0-preview](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.LocalSearch/0.9.0-preview) | | | | LUIS Authoring | NuGet [3.1.0](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Language.LUIS.Authoring/3.1.0)
NuGet [3.2.0-preview.5](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Language.LUIS.Authoring/3.2.0-preview.5) | | GitHub [3.1.0](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Language.LUIS.Authoring_3.2.0-preview.3/sdk/cognitiveservices/Language.LUIS.Authoring) | @@ -452,7 +452,7 @@ | News Search | NuGet [2.0.0](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.NewsSearch/2.0.0) | | | | Notification Hubs | NuGet [4.2.0](https://www.nuget.org/packages/Microsoft.Azure.NotificationHubs/4.2.0) | | GitHub [4.2.0](https://github.com/Azure/azure-notificationhubs-dotnet) | | Personalizer | NuGet [1.0.0](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Personalizer/1.0.0) | | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Personalizer_1.0.0/sdk/cognitiveservices/Personalizer) | -| Relay | NuGet [3.0.1](https://www.nuget.org/packages/Microsoft.Azure.Relay/3.0.1) | [docs](https://learn.microsoft.com/dotnet/api/overview/azure/service-bus-relay) | GitHub [3.0.1](https://github.com/Azure/azure-relay-dotnet/tree/2.0.1) | +| Relay | NuGet [3.0.1](https://www.nuget.org/packages/Microsoft.Azure.Relay/3.0.1) | [docs](/dotnet/api/overview/azure/service-bus-relay) | GitHub [3.0.1](https://github.com/Azure/azure-relay-dotnet/tree/2.0.1) | | Schema Registry - Avro | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Microsoft.Azure.Kafka.SchemaRegistry.Avro/1.0.0-beta.1) | | | | Schema Registry - JSON | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Microsoft.Azure.Kafka.SchemaRegistry.Json/1.0.0-beta.1) | | | | Search - Common | NuGet [10.1.0](https://www.nuget.org/packages/Microsoft.Azure.Search.Common/10.1.0) | | GitHub [10.1.0](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.Search.Common_10.1.0/sdk/search/Microsoft.Azure.Search.Common/) | @@ -463,7 +463,7 @@ | Speech Xamarin iOS | NuGet [1.25.0](https://www.nuget.org/packages/Microsoft.CognitiveServices.Speech.Xamarin.iOS/1.25.0) | | | | Spell Check | NuGet [4.1.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Language.SpellCheck/4.1.0-preview.1) | | GitHub [4.1.0-preview.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Language.SpellCheck_4.1.0-preview.1/sdk/cognitiveservices/Language.SpellCheck) | | Spring Cloud Client | NuGet [2.0.0-preview.3](https://www.nuget.org/packages/Microsoft.Azure.SpringCloud.Client/2.0.0-preview.3) | | | -| Storage - Files Data Lake | NuGet [2.0.1](https://www.nuget.org/packages/Microsoft.Azure.DataLake.Store/2.0.1) | [docs](https://learn.microsoft.com/dotnet/api/overview/azure/data-lake-store) | GitHub [2.0.1](https://github.com/Azure/azure-data-lake-store-net/tree/1.2.3-alpha) | +| Storage - Files Data Lake | NuGet [2.0.1](https://www.nuget.org/packages/Microsoft.Azure.DataLake.Store/2.0.1) | [docs](/dotnet/api/overview/azure/data-lake-store) | GitHub [2.0.1](https://github.com/Azure/azure-data-lake-store-net/tree/1.2.3-alpha) | | Synapse Analytics | NuGet [0.1.0-preview](https://www.nuget.org/packages/Microsoft.Azure.Synapse/0.1.0-preview) | | GitHub [0.1.0-preview](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.Synapse_0.1.0-preview/sdk/synapse/Microsoft.Azure.Synapse/) | | Tables | NuGet [2.1.2](https://www.nuget.org/packages/Microsoft.Azure.CosmosDB.Table/2.1.2) | | | | Video Search | NuGet [2.1.0-preview.1](https://www.nuget.org/packages/Microsoft.Azure.CognitiveServices.Search.BingVideoSearch/2.1.0-preview.1) | | GitHub [2.1.0-preview.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.CognitiveServices.Search.BingVideoSearch_2.1.0-preview.1/sdk/cognitiveservices/Search.BingVideoSearch) | @@ -488,7 +488,7 @@ | Functions extension for Azure SQL and SQL Server | NuGet [3.1.284](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.Sql/3.1.284) | | | | Functions extension for Cosmos DB | NuGet [4.8.1](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.CosmosDB/4.8.1) | | GitHub [4.8.1](https://github.com/Azure/azure-webjobs-sdk-extensions/tree/cosmos-v3.0.7/src/WebJobs.Extensions.CosmosDB) | | Functions extension for DocumentDB | NuGet [1.3.0](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.DocumentDB/1.3.0) | | GitHub [1.3.0](https://github.com/Azure/azure-webjobs-sdk-extensions) | -| Functions extension for Durable Task Framework | NuGet [3.0.2](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.DurableTask/3.0.2) | [docs](https://learn.microsoft.com/dotnet/api/overview/azure/functions) | GitHub [3.0.2](https://github.com/Azure/azure-functions-durable-extension/tree/v2.2.2/src/WebJobs.Extensions.DurableTask) | +| Functions extension for Durable Task Framework | NuGet [3.0.2](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.DurableTask/3.0.2) | [docs](/dotnet/api/overview/azure/functions) | GitHub [3.0.2](https://github.com/Azure/azure-functions-durable-extension/tree/v2.2.2/src/WebJobs.Extensions.DurableTask) | | Functions extension for Durable Task Framework - isolated worker | NuGet [1.2.2](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.DurableTask/1.2.2) | | | | Functions extension for HTTP | NuGet [3.2.0](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.Http/3.2.0) | | GitHub [3.2.0](https://github.com/Azure/azure-webjobs-sdk-extensions/tree/v3.0.2/src/WebJobs.Extensions.Http) | | Functions extension for IoT Edge | NuGet [1.0.7](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.EdgeHub/1.0.7) | | GitHub [1.0.7](https://github.com/Azure/iotedge/tree/1.0.7/edge-hub) | diff --git a/docs/orleans/tutorials-and-samples/index.md b/docs/orleans/tutorials-and-samples/index.md index 040e4141b83f1..05392f1ddca4d 100644 --- a/docs/orleans/tutorials-and-samples/index.md +++ b/docs/orleans/tutorials-and-samples/index.md @@ -156,7 +156,7 @@ Simulates bank accounts, using ACID transactions to transfer random amounts betw ## [Blazor Server](/samples/dotnet/samples/orleans-aspnet-core-blazor-server-sample) and [Blazor WebAssembly](/samples/dotnet/samples/orleans-aspnet-core-blazor-wasm-sample) -:::image type="content" source="https://raw.githubusercontent.com/dotnet/samples/main/orleans/Blazor/BlazorServer/screenshot.jpeg" alt-text="Blazor Orleans sample app screen capture"::: +:::image type="content" source="https://raw.githubusercontent.com/dotnet/samples/main/orleans/Blazor/BlazorServer/screenshot.png" alt-text="Blazor Orleans sample app screen capture"::: These two Blazor samples are based on the [Blazor introductory tutorials](https://dotnet.microsoft.com/learn/aspnet/blazor-tutorial/intro), adapted for use with Orleans. The [Blazor WebAssembly](https://github.com/dotnet/samples/tree/main/orleans/Blazor/BlazorWasm) sample uses the [Blazor WebAssembly hosting model](/aspnet/core/blazor/hosting-models#blazor-webassembly). From a1b948bfef1d5057dc3bf969c4a926dd0cc40440 Mon Sep 17 00:00:00 2001 From: Anton Firszov Date: Wed, 29 Jan 2025 18:16:02 +0100 Subject: [PATCH 36/55] Distributed tracing in networking (#44063) Introduce conceptual docs on distributed tracing in System.Net. Leverage Aspire Dashboards to demo the traces. --- .../distributed-tracing-builtin-activities.md | 3 + .../core/diagnostics/media/aspire-starter.png | Bin 0 -> 39016 bytes .../media/grafana-http11-connections.png | Bin 0 -> 32171 bytes .../csharp/Program.cs | 23 ++- .../includes/aspire-service-defaults.md | 22 +++ .../includes/aspire-telemetry-overview.md | 7 + .../media/aspire-connection_setup-thumb.png | Bin 0 -> 40116 bytes .../media/aspire-connection_setup.png | Bin 0 -> 44599 bytes .../media/aspire-httpclient-get-thumb.png | Bin 0 -> 38190 bytes .../telemetry/media/aspire-httpclient-get.png | Bin 0 -> 97392 bytes .../telemetry/media/aspire-metrics-thumb.png | Bin 0 -> 39268 bytes .../telemetry/media/aspire-metrics.png | Bin 0 -> 103107 bytes .../telemetry/media/aspire-starter.png | Bin 0 -> 39016 bytes .../telemetry/media/connection-link.png | Bin 0 -> 12349 bytes .../telemetry/media/dotnet-counters.png | Bin 0 -> 15978 bytes .../telemetry/media/grafana-connections.png | Bin 121860 -> 0 bytes .../networking/telemetry/metrics.md | 140 ++++++++---------- .../networking/telemetry/overview.md | 5 +- .../telemetry/snippets/metrics/Program.cs | 35 +---- ...nnectionTracingDemo.ServiceDefaults.csproj | 22 +++ .../Extensions.cs | 125 ++++++++++++++++ .../networking/telemetry/tracing.md | 140 ++++++++++++++++++ docs/fundamentals/toc.yml | 3 + 23 files changed, 417 insertions(+), 108 deletions(-) create mode 100644 docs/core/diagnostics/media/aspire-starter.png create mode 100644 docs/core/diagnostics/media/grafana-http11-connections.png create mode 100644 docs/fundamentals/networking/telemetry/includes/aspire-service-defaults.md create mode 100644 docs/fundamentals/networking/telemetry/includes/aspire-telemetry-overview.md create mode 100644 docs/fundamentals/networking/telemetry/media/aspire-connection_setup-thumb.png create mode 100644 docs/fundamentals/networking/telemetry/media/aspire-connection_setup.png create mode 100644 docs/fundamentals/networking/telemetry/media/aspire-httpclient-get-thumb.png create mode 100644 docs/fundamentals/networking/telemetry/media/aspire-httpclient-get.png create mode 100644 docs/fundamentals/networking/telemetry/media/aspire-metrics-thumb.png create mode 100644 docs/fundamentals/networking/telemetry/media/aspire-metrics.png create mode 100644 docs/fundamentals/networking/telemetry/media/aspire-starter.png create mode 100644 docs/fundamentals/networking/telemetry/media/connection-link.png create mode 100644 docs/fundamentals/networking/telemetry/media/dotnet-counters.png delete mode 100644 docs/fundamentals/networking/telemetry/media/grafana-connections.png create mode 100644 docs/fundamentals/networking/telemetry/snippets/tracing/ConnectionTracingDemo.ServiceDefaults/ConnectionTracingDemo.ServiceDefaults.csproj create mode 100644 docs/fundamentals/networking/telemetry/snippets/tracing/ConnectionTracingDemo.ServiceDefaults/Extensions.cs create mode 100644 docs/fundamentals/networking/telemetry/tracing.md diff --git a/docs/core/diagnostics/distributed-tracing-builtin-activities.md b/docs/core/diagnostics/distributed-tracing-builtin-activities.md index be61a20ca3c3b..80e87f16ffb17 100644 --- a/docs/core/diagnostics/distributed-tracing-builtin-activities.md +++ b/docs/core/diagnostics/distributed-tracing-builtin-activities.md @@ -11,6 +11,9 @@ This is a reference for distributed tracing [activities](xref:System.Diagnostics ## System.Net activities +> [!TIP] +> For a comprehensive guide about collecting and reporting `System.Net` traces, see [Networking distributed traces in .NET](../../fundamentals/networking/telemetry/metrics.md). + ### HTTP client request and report the HTTP client request activity following the recommendations defined in OpenTelemetry [HTTP Client Semantic Conventions](https://opentelemetry.io/docs/specs/semconv/http/http-spans/#http-client). It describes the HTTP request sent by 's send overloads during the time interval the underlying handler completes the request. Completing the request includes the time up to reading response headers from the network stream. It doesn't include the time spent reading the response body. may retry requests, for example, on connection failures or HTTP version downgrades. Retries are not reported as separate *HTTP client request* activities. diff --git a/docs/core/diagnostics/media/aspire-starter.png b/docs/core/diagnostics/media/aspire-starter.png new file mode 100644 index 0000000000000000000000000000000000000000..8c2ed3247447892f882db87f9bf8cfc5df6c341a GIT binary patch literal 39016 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 literal 0 HcmV?d00001 diff --git a/docs/core/diagnostics/media/grafana-http11-connections.png b/docs/core/diagnostics/media/grafana-http11-connections.png new file mode 100644 index 0000000000000000000000000000000000000000..0887f8c43c8ed7669d6308d0965f79994e60eb48 GIT binary patch literal 32171 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

wH+siYMpDP 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 kNArKt9*?&aRaHge9FQc4mY6 +// +app.MapGet("/ClientStress", async Task (ILogger logger, HttpClient client) => +{ + string[] uris = ["http://example.com", "http://httpbin.org/get", "https://example.com", "https://httpbin.org/get"]; + await Parallel.ForAsync(0, 50, async (_, ct) => + { + string uri = uris[Random.Shared.Next(uris.Length)]; + + try + { + await client.GetAsync(uri, ct); + logger.LogInformation($"{uri} - done."); + } + catch { logger.LogInformation($"{uri} - failed."); } + }); + return "Sent 50 requests to example.com and httpbin.org."; +}); +// #if !AZURE_MONITOR // @@ -99,7 +120,7 @@ app.Run(); // -async Task SendGreeting(ILogger logger) +async Task SendGreeting(ILogger logger) { // Create a new Activity scoped to the method using var activity = greeterActivitySource.StartActivity("GreeterActivity"); diff --git a/docs/fundamentals/networking/telemetry/includes/aspire-service-defaults.md b/docs/fundamentals/networking/telemetry/includes/aspire-service-defaults.md new file mode 100644 index 0000000000000..653c293128789 --- /dev/null +++ b/docs/fundamentals/networking/telemetry/includes/aspire-service-defaults.md @@ -0,0 +1,22 @@ +The Aspire Service Defaults project provides an easy way to configure OTel for ASP.NET projects, *even if not using the rest of .NET Aspire* such as the AppHost for orchestration. The Service Defaults project is available as a project template via Visual Studio or `dotnet new`. It configures OTel and sets up the OTLP exporter. You can then use the [OTel environment variables](https://github.com/open-telemetry/opentelemetry-dotnet/tree/c94c422e31b2a5181a97b2dcf4bdc984f37ac1ff/src/OpenTelemetry.Exporter.OpenTelemetryProtocol#exporter-configuration) to configure the OTLP endpoint to send telemetry to, and provide the resource properties for the application. + +The steps to use *ServiceDefaults* outside .NET Aspire are: + +1. Add the *ServiceDefaults* project to the solution using Add New Project in Visual Studio, or use `dotnet new`: + + ```dotnetcli + dotnet new aspire-servicedefaults --output ServiceDefaults + ``` + +1. Reference the *ServiceDefaults* project from your ASP.NET application. In Visual Studio, select **Add** > **Project Reference** and select the **ServiceDefaults** project" +1. Call the OpenTelemetry setup function `ConfigureOpenTelemetry()` as part of your application builder initialization. + + ``` csharp + var builder = WebApplication.CreateBuilder(args) + builder.ConfigureOpenTelemetry(); // Extension method from ServiceDefaults. + var app = builder.Build(); + app.MapGet("/", () => "Hello World!"); + app.Run(); + ``` + +For a full walkthrough, see [Example: Use OpenTelemetry with OTLP and the standalone Aspire Dashboard](../../../../core/diagnostics/observability-otlp-example.md). diff --git a/docs/fundamentals/networking/telemetry/includes/aspire-telemetry-overview.md b/docs/fundamentals/networking/telemetry/includes/aspire-telemetry-overview.md new file mode 100644 index 0000000000000..4ee8511a97430 --- /dev/null +++ b/docs/fundamentals/networking/telemetry/includes/aspire-telemetry-overview.md @@ -0,0 +1,7 @@ +A simple way to collect traces and metrics in ASP.NET applications is to use [.NET Aspire](/dotnet/aspire/get-started/aspire-overview). .NET Aspire is a set of extensions to .NET to make it easy to create and work with distributed applications. One of the benefits of using .NET Aspire is that telemetry is built in, using the OpenTelemetry libraries for .NET. + +The default project templates for .NET Aspire contain a `ServiceDefaults` project. Each service in the .NET Aspire solution has a reference to the Service Defaults project. The services use it to set up and configure OTel. + +The Service Defaults project template includes the OTel SDK, ASP.NET, HttpClient, and Runtime Instrumentation packages. These instrumentation components are configured in the [Extensions.cs](https://github.com/dotnet/aspire/blob/main/src/Aspire.ProjectTemplates/templates/aspire-servicedefaults/Extensions.cs) file. To support telemetry visualization in Aspire Dashboard, the Service Defaults project also includes the OTLP exporter by default. + +Aspire Dashboard is designed to bring telemetry observation to the local debug cycle, which enables developers to ensure that the applications are producing telemetry. The telemetry visualization also helps to diagnose those applications locally. Being able to observe the calls between services is as useful at debug time as in production. The .NET Aspire dashboard is launched automatically when you F5 the `AppHost` Project from Visual Studio or `dotnet run` the `AppHost` project from command line. diff --git a/docs/fundamentals/networking/telemetry/media/aspire-connection_setup-thumb.png b/docs/fundamentals/networking/telemetry/media/aspire-connection_setup-thumb.png new file mode 100644 index 0000000000000000000000000000000000000000..0bfb650cb0e0e2b2fb447d17e0bc29e14ad8b0ea GIT binary patch literal 40116 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

bo8*{fU4;_K4?y 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 W+vQAQbOyXWkffNLXu0qwzkdUTU(3b- literal 0 HcmV?d00001 diff --git a/docs/fundamentals/networking/telemetry/media/aspire-httpclient-get-thumb.png b/docs/fundamentals/networking/telemetry/media/aspire-httpclient-get-thumb.png new file mode 100644 index 0000000000000000000000000000000000000000..61d44bda516a98ad7210ee9db225ef2e6e7aeb14 GIT binary patch literal 38190 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 D$K`LB literal 0 HcmV?d00001 diff --git a/docs/fundamentals/networking/telemetry/media/aspire-httpclient-get.png b/docs/fundamentals/networking/telemetry/media/aspire-httpclient-get.png new file mode 100644 index 0000000000000000000000000000000000000000..7f41b8bd3f1edd968b64cc93cd445dd94825ba9d GIT binary patch literal 97392 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 literal 0 HcmV?d00001 diff --git a/docs/fundamentals/networking/telemetry/media/aspire-metrics.png b/docs/fundamentals/networking/telemetry/media/aspire-metrics.png new file mode 100644 index 0000000000000000000000000000000000000000..173b4acf55b0c510d5f1c2314daec3f760083d82 GIT binary patch literal 103107 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 literal 0 HcmV?d00001 diff --git a/docs/fundamentals/networking/telemetry/media/connection-link.png b/docs/fundamentals/networking/telemetry/media/connection-link.png new file mode 100644 index 0000000000000000000000000000000000000000..9ebdb6297a9e46427ba1e68292bbdcadc06538bd GIT binary patch literal 12349 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 a1)ovD-5shSxb&arNJ?_*uPSBC-v19HPOPW^ literal 0 HcmV?d00001 diff --git a/docs/fundamentals/networking/telemetry/media/dotnet-counters.png b/docs/fundamentals/networking/telemetry/media/dotnet-counters.png new file mode 100644 index 0000000000000000000000000000000000000000..bdc0521cc2b32802371f2a0a5f594be32bcd7ecd GIT binary patch literal 15978 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 m{(q_+{txSVvzg [!TIP] > For a comprehensive list of all built-in instruments together with their attributes, see [System.Net metrics](../../../core/diagnostics/built-in-metrics-system-net.md). ## Collect System.Net metrics -There are two parts to using metrics in a .NET app: +To take advantage of the built-in metrics instrumentation, a .NET app needs to be configured to collect these metrics. This typically means transforming them for external storage and analysis, for example, to monitoring systems. -* **Instrumentation:** Code in .NET libraries takes measurements and associates these measurements with a metric name. .NET and ASP.NET Core include many built-in metrics. -* **Collection:** A .NET app configures named metrics to be transmitted from the app for external storage and analysis. Some tools might perform configuration outside the app using configuration files or a UI tool. +There are several ways to collect networking metrics in .NET. -This section demonstrates various methods to collect and view System.Net metrics. +- For a quick overview using a simple, self-contained example, see [Collect metrics with dotnet-counters](#collect-metrics-with-dotnet-counters). +- For **production-time** metrics collection and monitoring, you can use [Grafana with OpenTelemetry and Prometheus](#view-metrics-in-grafana-with-opentelemetry-and-prometheus) or [Azure Monitor Application Insights](../../../core/diagnostics/observability-applicationinsights.md). However, these tools might be inconvenient to use at development time because of their complexity. +- For **development-time** metrics collection and troubleshooting, we recommend using [.NET Aspire](#collect-metrics-with-net-aspire), which provides a simple but extensible way to kickstart metrics and distributed tracing in your application and to diagnose issues locally. +- It's also possible to [reuse the Aspire Service Defaults](#reuse-service-defaults-project-without-net-aspire-orchestration) project without the Aspire orchestration, which is a handy way to introduce the OpenTelemetry tracing and metrics configuration APIs into your ASP.NET project. -### Example app +### Collect metrics with dotnet-counters -For the sake of this tutorial, create a simple app that sends HTTP requests to various endpoints in parallel. +[`dotnet-counters`](../../../core/diagnostics/dotnet-counters.md) is a cross-platform command line tool for ad-hoc examination of .NET metrics and first-level performance investigation. + +For the sake of this tutorial, create an app that sends HTTP requests to various endpoints in parallel. ```dotnetcli dotnet new console -o HelloBuiltinMetrics @@ -39,118 +43,102 @@ Replace the contents of `Program.cs` with the following sample code: :::code language="csharp" source="snippets/metrics/Program.cs" id="snippet_ExampleApp"::: -### View metrics with dotnet-counters - -[`dotnet-counters`](../../../core/diagnostics/dotnet-counters.md) is a cross-platform performance monitoring tool for ad-hoc health monitoring and first-level performance investigation. +Make sure `dotnet-counters` is installed: ```dotnetcli dotnet tool install --global dotnet-counters ``` -When running against a .NET 8+ process, `dotnet-counters` enables the instruments defined by the `--counters` argument and displays the measurements. It continuously refreshes the console with the latest numbers: +Start the HelloBuiltinMetrics app. -```console -dotnet-counters monitor --counters System.Net.Http,System.Net.NameResolution -n HelloBuiltinMetrics +```dotnetcli +dotnet run -c Release ``` -### View metrics in Grafana with OpenTelemetry and Prometheus - -#### Overview - -[OpenTelemetry](https://opentelemetry.io/): +Start `dotnet-counters` in a separate CLI window and specify the process name and the meters to watch, then press a key in the HelloBuiltinMetrics app so it starts sending requests. As soon as measurements start landing, `dotnet-counters` continuously refreshes the console with the latest numbers: -- Is a vendor-neutral, open-source project supported by the [Cloud Native Computing Foundation](https://www.cncf.io/). -- Standardizes generating and collecting telemetry for cloud-native software. -- Works with .NET using the .NET metric APIs. -- Is endorsed by [Azure Monitor](/azure/azure-monitor/app/opentelemetry-overview) and many APM vendors. - -This tutorial shows one of the integrations available for OpenTelemetry metrics using the OSS [Prometheus](https://prometheus.io/) and [Grafana](https://grafana.com/) projects. The metrics data flow consists of the following steps: +```console +dotnet-counters monitor --counters System.Net.Http,System.Net.NameResolution -n HelloBuiltinMetrics +``` -1. The .NET metric APIs record measurements from the example app. -1. The OpenTelemetry library running in the app aggregates the measurements. -1. The Prometheus exporter library makes the aggregated data available via an HTTP metrics endpoint. 'Exporter' is what OpenTelemetry calls the libraries that transmit telemetry to vendor-specific backends. -1. A Prometheus server: +![`dotnet-counters` output](media/dotnet-counters.png) - - Polls the metrics endpoint. - - Reads the data. - - Stores the data in a database for long-term persistence. Prometheus refers to reading and storing data as *scraping* an endpoint. - - Can run on a different machine. +### Collect metrics with .NET Aspire -1. The Grafana server: +[!INCLUDE[Aspire Telemetry Overview](./includes/aspire-telemetry-overview.md)] - - Queries the data stored in Prometheus and displays it on a web-based monitoring dashboard. - - Can run on a different machine. +#### Quick walkthrough -#### Configure the example app to use OpenTelemetry's Prometheus exporter +1. Create a **.NET Aspire 9 Starter App** by using `dotnet new`: -Add a reference to the OpenTelemetry Prometheus exporter to the example app: + ```dotnetcli + dotnet new aspire-starter-9 --output AspireDemo + ``` -```dotnetcli -dotnet add package OpenTelemetry.Exporter.Prometheus.HttpListener --prerelease -``` + Or in Visual Studio, create a new project and select the **.NET Aspire 9 Starter App** template: -> [!NOTE] -> This tutorial uses a pre-release build of OpenTelemetry's Prometheus support available at the time of writing. + ![Create a .NET Aspire 9 Starter App in Visual Studio](media/aspire-starter.png) -Update `Program.cs` with OpenTelemetry configuration: +1. Open `Extensions.cs` in the `ServiceDefaults` project, and scroll to the `ConfigureOpenTelemetry` method. Notice the `AddHttpClientInstrumentation()` call subscribing to the networking meters. -:::code language="csharp" source="snippets/metrics/Program.cs" id="snippet_PrometheusExporter" highlight="5-8"::: + :::code language="csharp" source="snippets/tracing/ConnectionTracingDemo.ServiceDefaults/Extensions.cs" id="snippet_Metrics" highlight="4"::: -In the preceding code: + Note that on .NET 8+, `AddHttpClientInstrumentation()` can be replaced by manual meter subscriptions: -- `AddMeter("System.Net.Http", "System.Net.NameResolution")` configures OpenTelemetry to transmit all the metrics collected by the built-in `System.Net.Http` and `System.Net.NameResolution` meters. -- `AddPrometheusHttpListener` configures OpenTelemetry to expose Prometheus' metrics HTTP endpoint on port `9184`. + ```csharp + .WithMetrics(metrics => + { + metrics.AddAspNetCoreInstrumentation() + .AddMeter("System.Net.Http") + .AddMeter("System.Net.NameResolution") + .AddRuntimeInstrumentation(); + }) + ``` -> [!NOTE] -> This configuration differs for ASP.NET Core apps, where metrics are exported with `OpenTelemetry.Exporter.Prometheus.AspNetCore` instead of `HttpListener`. See the [related ASP.NET Core example](/aspnet/core/log-mon/metrics/metrics#create-the-starter-app). +1. Run the `AppHost` project. This should launch the Aspire Dashboard. -Run the app and leave it running so measurements can be collected: +1. Navigate to the Weather page of the `webfrontend` app to generate an `HttpClient` request towards `apiservice`. Refresh the page several times to send multiple requests. -```dotnetcli -dotnet run -``` +1. Return to the Dashboard, navigate to the **Metrics** page, and select the `webfrontend` resource. Scrolling down, you should be able to browse the built-in `System.Net` metrics. -#### Set up and configure Prometheus + [![Networking metrics in Aspire Dashboard](media/aspire-metrics-thumb.png)](media/aspire-metrics.png#lightbox) -Follow the [Prometheus first steps](https://prometheus.io/docs/introduction/first_steps/) to set up a Prometheus server and confirm it is working. +For more information on .NET Aspire, see: -Modify the *prometheus.yml* configuration file so that Prometheus scrapes the metrics endpoint that the example app is exposing. Add the following highlighted text in the `scrape_configs` section: +- [Aspire Overview](/dotnet/aspire/get-started/aspire-overview) +- [Telemetry in Aspire](/dotnet/aspire/fundamentals/telemetry) +- [Aspire Dashboard](/dotnet/aspire/fundamentals/dashboard/explore) -:::code language="yaml" source="snippets/metrics/prometheus.yml" highlight="31-99"::: +### Reuse Service Defaults project without .NET Aspire orchestration -#### Start prometheus +[!INCLUDE[Aspire Service Defaults](./includes/aspire-service-defaults.md)] -1. Reload the configuration or restart the Prometheus server. -1. Confirm that OpenTelemetryTest is in the UP state in the **Status** > **Targets** page of the Prometheus web portal. -![Prometheus status](~/docs/core/diagnostics/media/prometheus-status.png) +### View metrics in Grafana with OpenTelemetry and Prometheus -1. On the Graph page of the Prometheus web portal, enter `http` in the expression text box and select `http_client_active_requests`. -![http_client_active_requests](~/docs/fundamentals/networking/telemetry/media/prometheus-search.png) - In the graph tab, Prometheus shows the value of the `http.client.active_requests` counter that's emitted by the example app. - ![Prometheus active requests graph](~/docs/fundamentals/networking/telemetry/media/prometheus-active-requests.png) +To see how to connect an example app with Prometheus and Grafana, follow the walkthrough in [Using OpenTelemetry with Prometheus, Grafana, and Jaeger](../../../core/diagnostics/observability-prgrja-example.md). -#### Show metrics on a Grafana dashboard +In order to stress `HttpClient` by sending parallel requests to various endpoints, extend the example app with the following endpoint: -1. Follow the [standard instructions](https://prometheus.io/docs/visualization/grafana/#installing) to install Grafana and connect it to a Prometheus data source. +:::code language="csharp" source="../../../core/diagnostics/snippets/OTel-Prometheus-Grafana-Jaeger/csharp/Program.cs" id="Snippet_ClientStress"::: -1. Create a Grafana dashboard by selecting the **+** icon on the top toolbar then selecting **Dashboard**. In the dashboard editor that appears, enter **Open HTTP/1.1 Connections** in the **Title** box and the following query in the PromQL expression field: +Create a Grafana dashboard by selecting the **+** icon on the top toolbar then selecting **Dashboard**. In the dashboard editor that appears, enter **Open HTTP/1.1 Connections** in the **Title** box and the following query in the PromQL expression field: ``` sum by(http_connection_state) (http_client_open_connections{network_protocol_version="1.1"}) ``` -![Grafana HTTP/1.1 Connections](~/docs/fundamentals/networking/telemetry/media/grafana-connections.png) +Select **Apply** to save and view the new dashboard. It displays the number of active vs idle HTTP/1.1 connections in the pool. -1. Select **Apply** to save and view the new dashboard. It displays the number of active vs idle HTTP/1.1 connections in the pool. +[![HTTP/1.1 Connections in Grafana](../../../core/diagnostics/media/grafana-http11-connections.png)](../../../core/diagnostics/media/grafana-http11-connections.png#lightbox) ## Enrichment -*Enrichment* is the addition of custom tags (a.k.a. attributes or labels) to a metric. This is useful if an app wants to add a custom categorization to dashboards or alerts built with metrics. +*Enrichment* is the addition of custom tags (also known as attributes or labels) to a metric. This is useful if an app wants to add a custom categorization to dashboards or alerts built with metrics. The [`http.client.request.duration`](../../../core/diagnostics/built-in-metrics-system-net.md#metric-httpclientrequestduration) instrument supports enrichment by registering callbacks with the . Note that this is a low-level API and a separate callback registration is needed for each `HttpRequestMessage`. A simple way to do the callback registration at a single place is to implement a custom . -This will allow you to intercept and modify the requests before they are forwarded to the inner handler and sent to the server: +This allows you to intercept and modify the requests before they're forwarded to the inner handler and sent to the server: :::code language="csharp" source="snippets/metrics/Program.cs" id="snippet_Enrichment"::: @@ -165,7 +153,7 @@ If you're working with [`IHttpClientFactory`](../../../core/extensions/httpclien ## `IMeterFactory` and `IHttpClientFactory` integration HTTP metrics were designed with isolation and testability in mind. These aspects are supported by the use of , which enables publishing metrics by a custom instance in order to keep Meters isolated from each other. -By default, all metrics are emitted by a global internal to the `System.Net.Http` library. This behavior can be overriden by assigning a custom instance to or . +By default, a global is used to emit all metrics. This internal to the `System.Net.Http` library. This behavior can be overridden by assigning a custom instance to or . > [!NOTE] > The is `System.Net.Http` for all metrics emitted by `HttpClientHandler` and `SocketsHttpHandler`. @@ -173,7 +161,7 @@ By default, all metrics are emitted by a global and assigns it to the primary handler it creates internally. > [!NOTE] -> Starting with .NET 8, the method automatically calls to initialize the metrics services and register the default implementation with . The default caches instances by name, meaning that there will be one with the name `System.Net.Http` per . +> Starting with .NET 8, the method automatically calls to initialize the metrics services and register the default implementation with . The default caches instances by name, meaning that there's one with the name `System.Net.Http` per . ### Test metrics @@ -187,7 +175,7 @@ Metrics are [more feature-rich](../../../core/diagnostics/compare-metric-apis.md Nevertheless, as of .NET 8, only the `System.Net.Http` and the `System.Net.NameResolutions` components are instrumented using Metrics, meaning that if you need counters from the lower levels of the stack such as `System.Net.Sockets` or `System.Net.Security`, you must use EventCounters. -Moreover, there are some semantical differences between Metrics and their matching EventCounters. +Moreover, there are some semantic differences between Metrics and their matching EventCounters. For example, when using `HttpCompletionOption.ResponseContentRead`, the [`current-requests` EventCounter](../../../core/diagnostics/available-counters.md) considers a request to be active until the moment when the last byte of the request body has been read. Its metrics counterpart [`http.client.active_requests`](../../../core/diagnostics/built-in-metrics-system-net.md#metric-httpclientactive_requests) doesn't include the time spent reading the response body when counting the active requests. diff --git a/docs/fundamentals/networking/telemetry/overview.md b/docs/fundamentals/networking/telemetry/overview.md index fb88a019e58cc..46a447c5392f5 100644 --- a/docs/fundamentals/networking/telemetry/overview.md +++ b/docs/fundamentals/networking/telemetry/overview.md @@ -8,9 +8,10 @@ ms.date: 10/18/2022 # Networking telemetry in .NET -The .NET networking stack is instrumented at various layers. .NET gives you the option to collect accurate timings throughout the lifetime of an HTTP request using metrics, event counters, and events. +The .NET networking stack is instrumented at various layers. .NET gives you the option to collect accurate timings throughout the lifetime of an HTTP request using metrics, distributed tracing, event counters, and events. -- **[Networking metrics](metrics.md)**: Starting with .NET 8, the HTTP and the name resolution (DNS) components are instrumented using the modern [System.Diagnostics.Metrics API](../../../core/diagnostics/metrics.md). These metrics were designed in cooperation with [OpenTelemetry](https://opentelemetry.io/). +- **[Networking metrics](metrics.md)**: Starting with .NET 8, the HTTP and the name resolution (DNS) components are instrumented using the modern [System.Diagnostics.Metrics API](../../../core/diagnostics/metrics.md). These metrics were designed in cooperation with [OpenTelemetry](https://opentelemetry.io/) and can be exported to various monitoring tools. +- **[Distributed tracing](tracing.md)**: `HttpClient` is instrumented to emit [distributed tracing](../../../core/diagnostics/distributed-tracing.md) activities (also known as spans). - **[Networking events](events.md)**: Events provide debug and trace information with accurate timestamps. - **[Networking event counters](event-counters.md)**: All networking components are instrumented to publish real-time performance metrics using the EventCounters API. diff --git a/docs/fundamentals/networking/telemetry/snippets/metrics/Program.cs b/docs/fundamentals/networking/telemetry/snippets/metrics/Program.cs index e490835f1b02a..d74c10cca6217 100644 --- a/docs/fundamentals/networking/telemetry/snippets/metrics/Program.cs +++ b/docs/fundamentals/networking/telemetry/snippets/metrics/Program.cs @@ -17,38 +17,15 @@ await Parallel.ForAsync(0, Random.Shared.Next(20), async (_, ct) => { string uri = uris[Random.Shared.Next(uris.Length)]; - byte[] bytes = await client.GetByteArrayAsync(uri, ct); - await Console.Out.WriteLineAsync($"{uri} - received {bytes.Length} bytes."); + try + { + byte[] bytes = await client.GetByteArrayAsync(uri, ct); + await Console.Out.WriteLineAsync($"{uri} - received {bytes.Length} bytes."); + } + catch { await Console.Out.WriteLineAsync($"{uri} - failed."); } }); } // -#elif snippet_PrometheusExporter -// -using OpenTelemetry.Metrics; -using OpenTelemetry; -using System.Net; - -using MeterProvider meterProvider = Sdk.CreateMeterProviderBuilder() - .AddMeter("System.Net.Http", "System.Net.NameResolution") - .AddPrometheusHttpListener(options => options.UriPrefixes = new string[] { "http://localhost:9184/" }) - .Build(); - -string[] uris = ["http://example.com", "http://httpbin.org/get", "https://example.com", "https://httpbin.org/get"]; -using HttpClient client = new() -{ - DefaultRequestVersion = HttpVersion.Version20 -}; - -while (!Console.KeyAvailable) -{ - await Parallel.ForAsync(0, Random.Shared.Next(20), async (_, ct) => - { - string uri = uris[Random.Shared.Next(uris.Length)]; - byte[] bytes = await client.GetByteArrayAsync(uri, ct); - await Console.Out.WriteLineAsync($"{uri} - received {bytes.Length} bytes."); - }); -} -// #elif snippet_Enrichment // using System.Net.Http.Metrics; diff --git a/docs/fundamentals/networking/telemetry/snippets/tracing/ConnectionTracingDemo.ServiceDefaults/ConnectionTracingDemo.ServiceDefaults.csproj b/docs/fundamentals/networking/telemetry/snippets/tracing/ConnectionTracingDemo.ServiceDefaults/ConnectionTracingDemo.ServiceDefaults.csproj new file mode 100644 index 0000000000000..5d08206bbd6f2 --- /dev/null +++ b/docs/fundamentals/networking/telemetry/snippets/tracing/ConnectionTracingDemo.ServiceDefaults/ConnectionTracingDemo.ServiceDefaults.csproj @@ -0,0 +1,22 @@ + + + + net9.0 + enable + enable + true + + + + + + + + + + + + + + + diff --git a/docs/fundamentals/networking/telemetry/snippets/tracing/ConnectionTracingDemo.ServiceDefaults/Extensions.cs b/docs/fundamentals/networking/telemetry/snippets/tracing/ConnectionTracingDemo.ServiceDefaults/Extensions.cs new file mode 100644 index 0000000000000..eb6a5822eb0d8 --- /dev/null +++ b/docs/fundamentals/networking/telemetry/snippets/tracing/ConnectionTracingDemo.ServiceDefaults/Extensions.cs @@ -0,0 +1,125 @@ +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Diagnostics.HealthChecks; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Diagnostics.HealthChecks; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.ServiceDiscovery; +using OpenTelemetry; +using OpenTelemetry.Metrics; +using OpenTelemetry.Trace; + +namespace Microsoft.Extensions.Hosting; + +// Adds common .NET Aspire services: service discovery, resilience, health checks, and OpenTelemetry. +// This project should be referenced by each service project in your solution. +// To learn more about using this project, see https://aka.ms/dotnet/aspire/service-defaults +public static class Extensions +{ + public static TBuilder AddServiceDefaults(this TBuilder builder) where TBuilder : IHostApplicationBuilder + { + builder.ConfigureOpenTelemetry(); + + builder.AddDefaultHealthChecks(); + + builder.Services.AddServiceDiscovery(); + + builder.Services.ConfigureHttpClientDefaults(http => + { + // Turn on resilience by default + http.AddStandardResilienceHandler(); + + // Turn on service discovery by default + http.AddServiceDiscovery(); + }); + + // Uncomment the following to restrict the allowed schemes for service discovery. + // builder.Services.Configure(options => + // { + // options.AllowedSchemes = ["https"]; + // }); + + return builder; + } + + public static TBuilder ConfigureOpenTelemetry(this TBuilder builder) where TBuilder : IHostApplicationBuilder + { + builder.Logging.AddOpenTelemetry(logging => + { + logging.IncludeFormattedMessage = true; + logging.IncludeScopes = true; + }); + + builder.Services.AddOpenTelemetry() + // + .WithMetrics(metrics => + { + metrics.AddAspNetCoreInstrumentation() + .AddHttpClientInstrumentation() + .AddRuntimeInstrumentation(); + }) + // + // + .WithTracing(tracing => + { + tracing.AddAspNetCoreInstrumentation() + // Instead of using .AddHttpClientInstrumentation() + // .NET 9 allows to add the ActivitySources directly. + .AddSource("System.Net.Http") + // Add the experimental connection tracking ActivitySources using a wildcard. + .AddSource("Experimental.System.Net.*"); + }); + // + + builder.AddOpenTelemetryExporters(); + + return builder; + } + + + private static TBuilder AddOpenTelemetryExporters(this TBuilder builder) where TBuilder : IHostApplicationBuilder + { + var useOtlpExporter = !string.IsNullOrWhiteSpace(builder.Configuration["OTEL_EXPORTER_OTLP_ENDPOINT"]); + + if (useOtlpExporter) + { + builder.Services.AddOpenTelemetry().UseOtlpExporter(); + } + + // Uncomment the following lines to enable the Azure Monitor exporter (requires the Azure.Monitor.OpenTelemetry.AspNetCore package) + //if (!string.IsNullOrEmpty(builder.Configuration["APPLICATIONINSIGHTS_CONNECTION_STRING"])) + //{ + // builder.Services.AddOpenTelemetry() + // .UseAzureMonitor(); + //} + + return builder; + } + + public static TBuilder AddDefaultHealthChecks(this TBuilder builder) where TBuilder : IHostApplicationBuilder + { + builder.Services.AddHealthChecks() + // Add a default liveness check to ensure app is responsive + .AddCheck("self", () => HealthCheckResult.Healthy(), ["live"]); + + return builder; + } + + public static WebApplication MapDefaultEndpoints(this WebApplication app) + { + // Adding health checks endpoints to applications in non-development environments has security implications. + // See https://aka.ms/dotnet/aspire/healthchecks for details before enabling these endpoints in non-development environments. + if (app.Environment.IsDevelopment()) + { + // All health checks must pass for app to be considered ready to accept traffic after starting + app.MapHealthChecks("/health"); + + // Only health checks tagged with the "live" tag must pass for app to be considered alive + app.MapHealthChecks("/alive", new HealthCheckOptions + { + Predicate = r => r.Tags.Contains("live") + }); + } + + return app; + } +} diff --git a/docs/fundamentals/networking/telemetry/tracing.md b/docs/fundamentals/networking/telemetry/tracing.md new file mode 100644 index 0000000000000..2f35ba5742287 --- /dev/null +++ b/docs/fundamentals/networking/telemetry/tracing.md @@ -0,0 +1,140 @@ +--- +title: Networking tracing +description: Learn how to consume .NET networking Tracing. +author: samsp-msft +ms.author: samsp +ms.date: 10/4/2024 +--- + +# Distributed tracing in System.Net libraries + +[Distributed tracing](../../../core/diagnostics/distributed-tracing.md) is a diagnostic technique that helps engineers localize failures and performance issues within applications, especially those that are distributed across multiple machines or processes. This technique tracks requests through an application by correlating together work done by different components and separating it from other work the application might be doing for concurrent requests. For example, a request to a typical web service might be first received by a load balancer and then forwarded to a web server process, which then makes several queries to a database. Distributed tracing allows engineers to distinguish if any of those steps failed and how long each step took. It can also log messages produced by each step as it ran. + +The tracing system in .NET is designed to work with OpenTelemetry (OTel), and uses OTel to export the data to monitoring systems. Tracing in .NET is implemented using the APIs, where a unit of work is represented by the class, which corresponds to an OTel [span](https://opentelemetry.io/docs/concepts/signals/traces/#spans). OpenTelemetry defines an industry-wide standard naming scheme for spans (activities) together with their attributes (tags), known as [semantic conventions](https://opentelemetry.io/docs/concepts/semantic-conventions). The .NET telemetry uses existing semantic conventions wherever possible. + +> [!NOTE] +> The terms *span* and *activity* are synonymous in this article. In context of .NET code, they refer to a instance. Don't confuse the OTel span with . + +> [!TIP] +> For a comprehensive list of all built-in activities together with their tags/attributes, see [Built-in activities in .NET](../../../core/diagnostics/distributed-tracing-builtin-activities.md). + +## Instrumentation + +To emit traces, the libraries are [instrumented](../../../core/diagnostics/distributed-tracing-instrumentation-walkthroughs.md#add-basic-instrumentation) with built-in sources, which create objects to track the work performed. Activities are only created if there are listeners subscribed to the . + +The built-in instrumentation evolved with .NET versions. + +- On .NET 8 and earlier, the instrumentation is limited to the creation of an empty [HTTP client request activity](../../../core/diagnostics/distributed-tracing-builtin-activities.md#http-client-request). This means that users have to rely on the [`OpenTelemetry.Instrumentation.Http`](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/tree/1ca05685cbad63d3fa813b9cab49be341048e69e/src/OpenTelemetry.Instrumentation.Http#httpclient-and-httpwebrequest-instrumentation-for-opentelemetry) library to populate the activity with the information (for example, tags) needed to emit useful traces. +- .NET 9 extended the instrumentation by emitting the name, status, exception info, and the most important tags according to the OTel [HTTP client semantic conventions](https://opentelemetry.io/docs/specs/semconv/http/http-spans/#http-client) on the HTTP client request activity. This means that on .NET 9+, the `OpenTelemetry.Instrumentation.Http` dependency can be omitted, unless more advanced features like [enrichment](#enrichment) are required. +- .NET 9 also introduced [experimental connection tracing](#experimental-connection-tracing), adding new activities across the `System.Net` libraries to support diagnosing connection issues. + +## Collect System.Net traces + +At the [lowest level](../../../core/diagnostics/distributed-tracing-collection-walkthroughs.md#collect-traces-using-custom-logic), trace collection is supported via the method, which registers objects containing user-defined logic. + +However, as an application developer, you would likely prefer to rely on the rich ecosystem built upon the features provided by the [OpenTelemetry .NET SDK](https://opentelemetry.io/docs/languages/net/) to collect, export, and monitor traces. + +- To get a fundamental understanding on trace collection with OTel, see our guide on [collecting traces using OpenTelemetry](../../../core/diagnostics/distributed-tracing-collection-walkthroughs.md#collect-traces-using-opentelemetry). +- For **production-time** trace collection and monitoring, you can use OpenTelemetry with [Prometheus, Grafana, and Jaeger](../../../core/diagnostics/observability-prgrja-example.md) or with [Azure Monitor and Application Insights](../../../core/diagnostics/observability-applicationinsights.md). However, these tools are quite complex and might be inconvenient to use at development time. +- For **development-time** trace collection and monitoring, we recommend using [.NET Aspire](#collect-traces-with-net-aspire) which provides a simple but extensible way to kickstart distributed tracing in your application and to diagnose issues locally. +- It's also possible to [reuse the Aspire Service Defaults](#reuse-service-defaults-project-without-net-aspire-orchestration) project without the Aspire orchestration. This is a handy way to introduce and configure OpenTelemetry tracing and metrics in your ASP.NET projects. + +### Collect traces with .NET Aspire + +[!INCLUDE[Aspire Telemetry Overview](./includes/aspire-telemetry-overview.md)] + +[![Aspire Dashboard](../../../core/diagnostics/media/aspire-dashboard-thumb.png)](../../../core/diagnostics/media/aspire-dashboard.png#lightbox) + +For more information on .NET Aspire, see: + +- [Aspire Overview](/dotnet/aspire/get-started/aspire-overview) +- [Telemetry in Aspire](/dotnet/aspire/fundamentals/telemetry) +- [Aspire Dashboard](/dotnet/aspire/fundamentals/dashboard/explore) + +### Reuse Service Defaults project without .NET Aspire Orchestration + +[!INCLUDE[Aspire Service Defaults](./includes/aspire-service-defaults.md)] + +## Experimental connection tracing + +When troubleshooting `HttpClient` issues or bottlenecks, it might be crucial to see where time is being spent when sending HTTP requests. Often, the problem occurs during HTTP connection establishment, which typically breaks down to DNS lookup, TCP connection, and TLS handshake. + +.NET 9 introduced experimental connection tracing adding an `HTTP connection setup` span with three child spans representing the DNS, TCP, and TLS phases of the connection establishment. The HTTP part of the connection tracing is implemented within , meaning that the activity model has to respect the underlying connection pooling behavior. + +> [!NOTE] +> In , connections and requests have independent lifecycles. A [pooled connection](../http/httpclient-guidelines.md#pooled-connections) can live for a long time and serve many requests. When making a request, if there's no connection immediately available in the connection pool, the request is added to a request queue to wait for an available connection. There's no direct relationship between waiting requests and connections. The connection process might have started when another connection became available for use, in which case the freed connection is used. As a result, the `HTTP connection setup` span isn't modeled as a child of the `HTTP client request` span; instead, span links are used. + +.NET 9 introduced the following spans to enable collecting detailed connection information: + +| Name | | Description | +|---|---|---| +| [`HTTP wait_for_connection`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#http-client-request-wait-for-connection-experimental) | `Experimental.System.Net.Http.Connections` | A child span of the `HTTP client request` span that represents the time interval the request is waiting for an available connection in the request queue. | +| [`HTTP connection_setup`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#http-connection-setup-experimental) | `Experimental.System.Net.Http.Connections` | Represents the establishment of the HTTP connection. A separate trace root span with its own `TraceId`. `HTTP client request` spans might contain links to `HTTP connection_setup`. | +| [`DNS lookup`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#dns-lookup-experimental) | `Experimental.System.Net.NameResolution` | DNS lookup performed by the class. | +| [`socket connect`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#socket-connect-experimental) | `Experimental.System.Net.Sockets` | Establishment of a connection. | +| [`TLS handshake`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#tls-handshake-experimental) | `Experimental.System.Net.Security` | TLS client or server handshake performed by . | + +> [!NOTE] +> The corresponding `ActivitySource` names start with the prefix `Experimental`, as these spans might be changed in future versions as we learn more about how well they work in production. + +These spans are too verbose for use 24x7 in production scenarios with high workloads - they're noisy and this level of instrumentation isn't normally needed. However, if you're trying to diagnose connection issues or get a deeper understanding of how network and connection latency is affecting your services, then they provide insight that's hard to collect by other means. + +When the `Experimental.System.Net.Http.Connections` ActivitySource is enabled, *the `HTTP client request` span contains a link to the `HTTP connection_setup` span corresponding to the connection serving the request*. As an HTTP connection can be long lived, this could result in many links to the connection span from each of the request activities. Some APM monitoring tools aggressively walk links between spans to build up their views, and so including this span can cause issues when the tools weren't designed to account for large numbers of links. + +The following diagram illustrates the behavior of the spans and their relationship: + +[![Connection spans over time.](media/connection-link.png)](media/connection-link.png#lightbox) + +### Walkthrough: Using the experimental connection tracing in .NET 9 + +This walkthrough uses a [.NET 9 Aspire Starter App](/dotnet/aspire/get-started/build-your-first-aspire-app) to demonstrate connection tracing, but it should be easy to set it up with [other monitoring tools](#collect-systemnet-traces) as well. The key step is to enable the ActivitySources. + +1. Create a **.NET Aspire 9 Starter App** by using `dotnet new`: + + ```dotnetcli + dotnet new aspire-starter-9 --output ConnectionTracingDemo + ``` + + Or in Visual Studio: + + ![Create a .NET Aspire 9 Starter App in Visual Studio](media/aspire-starter.png) + +1. Open `Extensions.cs` in the `ServiceDefaults` project, and edit the `ConfigureOpenTelemetry` method adding the ActivitySources for connection in the tracing configuration callback: + + :::code language="csharp" source="snippets/tracing/ConnectionTracingDemo.ServiceDefaults/Extensions.cs" id="snippet_ConnectionTracing"::: + +1. Start the solution. This should open the [.NET Aspire Dashboard](/dotnet/aspire/fundamentals/dashboard/overview). + +1. Navigate to the Weather page of the `webfrontend` app to generate an `HttpClient` request towards `apiservice`. + +1. Return to the Dashboard and navigate to the **Traces** page. Open the `webfrontend: GET /weather` trace. + + [![HttpClient Spans in Aspire Dashboard](media/aspire-httpclient-get-thumb.png)](media/aspire-httpclient-get.png#lightbox) + +When HTTP requests are made with the connection instrumentation enabled, you should see the following changes to the client request spans: + +- If a connection needs to be established, or if the app is waiting for a connection from the connection pool, then an additional [`HTTP wait_for_connection`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#http-client-request-wait-for-connection-experimental) span is shown, which represents the delay for waiting for a connection to be made. This helps to understand delays between the `HttpClient` request being made in code, and when the processing of the request actually starts. In the previous image: + - The selected span is the HttpClient request. + - The span below represents the time the request spends waiting for a connection to be established. + - The last span in yellow is from the destination processing the request. +- The HttpClient span will have a link to the [`HTTP connection_setup`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#http-connection-setup-experimental) span, which represents the activity to create the HTTP connection used by the request. + +[![Connection setup spans in Aspire Dashboard](media/aspire-connection_setup-thumb.png)](media/aspire-connection_setup.png#lightbox) + +[As mentioned previously](#experimental-connection-tracing), the [`HTTP connection_setup`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#http-connection-setup-experimental) span is a separate span with its own `TraceId`, as its lifetime is independent from each individual client request. This span typically has child spans [`DNS lookup`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#dns-lookup-experimental), (TCP) [`socket connect`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#socket-connect-experimental), and [`TLS client handshake`](../../../core/diagnostics/distributed-tracing-builtin-activities.md#tls-handshake-experimental). + +## Enrichment + +In some cases, it's necessary to augment the existing `System.Net` tracing functionality. Typically this means injecting additional tags/attributes to the built-in activities. This is called *enrichment*. + +### Enrichment API in the OpenTelemetry instrumentation library + +To add additional tags/attributes to the HTTP client request activity, the simplest approach is to use the [`HttpClient` enrichment APIs](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/blob/main/src/OpenTelemetry.Instrumentation.Http/README.md#enrich-httpclient-api) of the OpenTelemetry HttpClient and HttpWebRequest instrumentation library. This requires taking a dependency on the [`OpenTelemetry.Instrumentation.Http`](https://www.nuget.org/packages/OpenTelemetry.Instrumentation.Http) package. + +### Manual enrichment + +It's possible to implement the enrichment of the `HTTP client request` activity manually. For this you need to access in the code that is running in the scope of the request activity, before the activity is finished. This can be done by implementing an `IObserver` and subscribing it to to get callbacks for when networking activity is occurring. In fact, this is how the [OpenTelemetry HttpClient and HttpWebRequest instrumentation library](#enrichment-api-in-the-opentelemetry-instrumentation-library) is implemented. For a code example, see the subscription code in [`DiagnosticSourceSubscriber.cs`](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/blob/bfdf02928ea7f958c481493bc1adc238472b9b9c/src/Shared/DiagnosticSourceSubscriber.cs#L44) and the underlying implementation in [HttpHandlerDiagnosticListener.cs](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/blob/bfdf02928ea7f958c481493bc1adc238472b9b9c/src/OpenTelemetry.Instrumentation.Http/Implementation/HttpHandlerDiagnosticListener.cs) where the notifications are delegated to. + +## Need more tracing? + +If you have suggestions for other useful information that could be exposed via tracing, create a [dotnet/runtime issue](https://github.com/dotnet/runtime/issues/new). diff --git a/docs/fundamentals/toc.yml b/docs/fundamentals/toc.yml index 4bdc9f639a617..9362c58675cbe 100644 --- a/docs/fundamentals/toc.yml +++ b/docs/fundamentals/toc.yml @@ -1168,6 +1168,9 @@ items: - name: Metrics href: networking/telemetry/metrics.md displayName: networking metrics + - name: Distributed tracing + href: networking/telemetry/tracing.md + displayName: networking distributed tracing - name: Events href: networking/telemetry/events.md displayName: networking events From a78c8bcb7b5cf1e10c8e2b02a603d19b8965d618 Mon Sep 17 00:00:00 2001 From: Megha Anand <88059806+anandmeg@users.noreply.github.com> Date: Wed, 29 Jan 2025 09:18:06 -0800 Subject: [PATCH 37/55] Update ms.custom value to the new value and add addl. highlights (#44580) * Update ms.custom value to the new value * Update ms.custom in deserialization.md * Update ms.custom in how-to.md * Update ms.custom in customize-properties.md * Update ms.custom in migrate-from-newtonsoft.md * Update how-to-convert-a-string-to-a-number.md * Add Copilot highlight to how-to-initialize-a-dictionary-with-a-collection-initializer.md * Update how-to-initialize-a-dictionary-with-a-collection-initializer.md * Add copilot highlight to concatenate-multiple-strings.md * Update docs/csharp/programming-guide/classes-and-structs/how-to-initialize-a-dictionary-with-a-collection-initializer.md Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com> * Update docs/csharp/programming-guide/classes-and-structs/how-to-initialize-a-dictionary-with-a-collection-initializer.md Co-authored-by: Bill Wagner --------- Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Co-authored-by: Bill Wagner --- .../how-to/concatenate-multiple-strings.md | 21 ++++++++++++++++++- .../how-to/parse-strings-using-split.md | 2 +- ...ictionary-with-a-collection-initializer.md | 21 ++++++++++++++++++- .../how-to-convert-a-string-to-a-number.md | 2 +- .../system-text-json/customize-properties.md | 2 +- .../system-text-json/deserialization.md | 2 +- .../serialization/system-text-json/how-to.md | 2 +- .../migrate-from-newtonsoft.md | 2 +- 8 files changed, 46 insertions(+), 8 deletions(-) diff --git a/docs/csharp/how-to/concatenate-multiple-strings.md b/docs/csharp/how-to/concatenate-multiple-strings.md index c41f2a6a9c6b6..ba73d17d4c47d 100644 --- a/docs/csharp/how-to/concatenate-multiple-strings.md +++ b/docs/csharp/how-to/concatenate-multiple-strings.md @@ -1,11 +1,13 @@ --- title: "How to concatenate multiple strings" description: There are multiple ways to concatenate strings in C#. Learn the options and the reasons behind different choices. -ms.date: 11/22/2024 +ms.date: 1/31/2025 helpviewer_keywords: - "joining strings [C#]" - "concatenating strings [C#]" - "strings [C#], concatenation" +ms.collection: ce-skilling-ai-copilot +ms.custom: copilot-scenario-highlight --- # How to concatenate multiple strings (C# Guide) @@ -13,6 +15,9 @@ helpviewer_keywords: [!INCLUDE[interactive-note](~/includes/csharp-interactive-note.md)] +> [!TIP] +> You can use AI assistance to [concatenate strings with GitHub Copilot](#use-github-copilot-to-concatenate-strings). + ## String literals The following example splits a long string literal into smaller strings to improve readability in the source code. The code concatenates the smaller strings to create the long string literal. The parts are concatenated into a single string at compile time. There's no run-time performance cost regardless of the number of strings involved. @@ -66,6 +71,20 @@ combines an array of words, adding a space between each word in the array: This option can cause more allocations than other methods for concatenating collections, as it creates an intermediate string for each iteration. If optimizing performance is critical, consider the [`StringBuilder`](#stringbuilder) class or the [`String.Concat` or `String.Join`](#stringconcat-or-stringjoin) method to concatenate a collection, instead of `Enumerable.Aggregate`. +## Use GitHub Copilot to concatenate strings + +You can use GitHub Copilot in your IDE to generate C# code to concatenate multiple strings. You can customize the prompt to specify strings and the method to use per your requirements. + +The following text shows an example prompt for Copilot Chat: + +```copilot-prompt +Generate C# code to use String.Format to build an output string "Hi x, today's date is y. You are z years old." where x is "John", y is today's date and z is the birthdate January 1, 2000. The final string should show date in the full format mm/dd/yyyy. Show output. +``` + +GitHub Copilot is powered by AI, so surprises and mistakes are possible. For more information, see [Copilot FAQs](https://aka.ms/copilot-general-use-faqs). + +Learn more about [GitHub Copilot in Visual Studio](/visualstudio/ide/visual-studio-github-copilot-install-and-states) and [GitHub Copilot in VS Code](https://code.visualstudio.com/docs/copilot/overview). + ## See also - diff --git a/docs/csharp/how-to/parse-strings-using-split.md b/docs/csharp/how-to/parse-strings-using-split.md index b551519804cee..fcff09eb616ec 100644 --- a/docs/csharp/how-to/parse-strings-using-split.md +++ b/docs/csharp/how-to/parse-strings-using-split.md @@ -8,7 +8,7 @@ helpviewer_keywords: - "strings [C#], splitting" - "parse strings" ms.assetid: 729c2923-4169-41c6-9c90-ef176c1e2953 -ms.custom: mvc, vs-copilot-horizontal +ms.custom: mvc, copilot-scenario-highlight ms.collection: ce-skilling-ai-copilot --- # How to separate strings using String.Split in C\# diff --git a/docs/csharp/programming-guide/classes-and-structs/how-to-initialize-a-dictionary-with-a-collection-initializer.md b/docs/csharp/programming-guide/classes-and-structs/how-to-initialize-a-dictionary-with-a-collection-initializer.md index a886ceea79984..aba9f14efa495 100644 --- a/docs/csharp/programming-guide/classes-and-structs/how-to-initialize-a-dictionary-with-a-collection-initializer.md +++ b/docs/csharp/programming-guide/classes-and-structs/how-to-initialize-a-dictionary-with-a-collection-initializer.md @@ -1,10 +1,12 @@ --- title: "How to initialize a dictionary with a collection initializer" description: Learn how to initialize a dictionary in C#, using either the Add method or an index initializer. This example shows both options. -ms.date: 03/15/2024 +ms.date: 01/31/2025 helpviewer_keywords: - "collection initializers [C#], with Dictionary" ms.topic: how-to +ms.collection: ce-skilling-ai-copilot +ms.custom: copilot-scenario-highlight ms.assetid: 25283922-f8ee-40dc-a639-fac30804ec71 --- # How to initialize a dictionary with a collection initializer (C# Programming Guide) @@ -22,6 +24,9 @@ A contains a collection of key/ > method will throw : `'An item with the same key has already been added. Key: 111'`, > while the second part of example, the public read / write indexer method, will quietly overwrite the already existing entry with the same key. +> [!TIP] +> You can use AI assistance to [initialize a dictionary with GitHub Copilot](#use-github-copilot-to-initialize-a-dictionary). + ## Example In the following code example, a is initialized with instances of type `StudentName`. The first initialization uses the `Add` method with two arguments. The compiler generates a call to `Add` for each of the pairs of `int` keys and `StudentName` values. The second uses a public read / write indexer method of the `Dictionary` class: @@ -30,6 +35,20 @@ In the following code example, a . Finally, the whole collection initializer for the dictionary is enclosed in braces. In the second initialization, the left side of the assignment is the key and the right side is the value, using an object initializer for `StudentName`. +## Use GitHub Copilot to initialize a dictionary + +You can use GitHub Copilot in your IDE to generate C# code to initialize a dictionary with a collection initializer. You can customize the prompt to add specifics per your requirements. + +The following text shows an example prompt for Copilot Chat: + +```copilot-prompt +Generate C# code to initialize Dictionary using key-value pairs within the collection initializer. The employee class is a record class with two properties: Name and Age. +``` + +GitHub Copilot is powered by AI, so surprises and mistakes are possible. For more information, see [Copilot FAQs](https://aka.ms/copilot-general-use-faqs). + +Learn more about [GitHub Copilot in Visual Studio](/visualstudio/ide/visual-studio-github-copilot-install-and-states) and [GitHub Copilot in VS Code](https://code.visualstudio.com/docs/copilot/overview). + ## See also - [Object and Collection Initializers](./object-and-collection-initializers.md) diff --git a/docs/csharp/programming-guide/types/how-to-convert-a-string-to-a-number.md b/docs/csharp/programming-guide/types/how-to-convert-a-string-to-a-number.md index 69f76e346307d..ee6bfdc763cc1 100644 --- a/docs/csharp/programming-guide/types/how-to-convert-a-string-to-a-number.md +++ b/docs/csharp/programming-guide/types/how-to-convert-a-string-to-a-number.md @@ -9,7 +9,7 @@ helpviewer_keywords: - "strings [C#], converting to int" ms.topic: how-to ms.collection: ce-skilling-ai-copilot -ms.custom: vs-copilot-horizontal +ms.custom: copilot-scenario-highlight ms.assetid: 467b9979-86ee-4afd-b734-30299cda91e3 adobe-target: true --- diff --git a/docs/standard/serialization/system-text-json/customize-properties.md b/docs/standard/serialization/system-text-json/customize-properties.md index 085228f0f7a72..05f9809d0b122 100644 --- a/docs/standard/serialization/system-text-json/customize-properties.md +++ b/docs/standard/serialization/system-text-json/customize-properties.md @@ -13,7 +13,7 @@ helpviewer_keywords: - "objects, serializing" ms.topic: how-to ms.collection: ce-skilling-ai-copilot -ms.custom: vs-copilot-horizontal +ms.custom: copilot-scenario-highlight --- # How to customize property names and values with System.Text.Json diff --git a/docs/standard/serialization/system-text-json/deserialization.md b/docs/standard/serialization/system-text-json/deserialization.md index 3e48f9f92d26d..728bf076f6b33 100644 --- a/docs/standard/serialization/system-text-json/deserialization.md +++ b/docs/standard/serialization/system-text-json/deserialization.md @@ -12,7 +12,7 @@ helpviewer_keywords: - "deserialization" ms.topic: concept-article ms.collection: ce-skilling-ai-copilot -ms.custom: vs-copilot-horizontal +ms.custom: copilot-scenario-highlight #customer intent: As a developer, I want to learn how to use System.Text.Json to deserialize JSON data. --- diff --git a/docs/standard/serialization/system-text-json/how-to.md b/docs/standard/serialization/system-text-json/how-to.md index 09971e7db275f..0e2d552c0ee7d 100644 --- a/docs/standard/serialization/system-text-json/how-to.md +++ b/docs/standard/serialization/system-text-json/how-to.md @@ -13,7 +13,7 @@ helpviewer_keywords: - "objects, serializing" ms.topic: how-to ms.collection: ce-skilling-ai-copilot -ms.custom: vs-copilot-horizontal +ms.custom: copilot-scenario-highlight adobe-target: true --- diff --git a/docs/standard/serialization/system-text-json/migrate-from-newtonsoft.md b/docs/standard/serialization/system-text-json/migrate-from-newtonsoft.md index 9d6a8617f7f6b..c0b9ba48e305b 100644 --- a/docs/standard/serialization/system-text-json/migrate-from-newtonsoft.md +++ b/docs/standard/serialization/system-text-json/migrate-from-newtonsoft.md @@ -11,7 +11,7 @@ helpviewer_keywords: ms.topic: how-to zone_pivot_groups: dotnet-version ms.collection: ce-skilling-ai-copilot -ms.custom: vs-copilot-horizontal +ms.custom: copilot-scenario-highlight --- # Migrate from Newtonsoft.Json to System.Text.Json From e10e4ebe0a1b4ff4f2dbc9fb47d06f140d60f097 Mon Sep 17 00:00:00 2001 From: Scott Addie <10702007+scottaddie@users.noreply.github.com> Date: Wed, 29 Jan 2025 13:31:01 -0600 Subject: [PATCH 38/55] Improve credential reuse code samples (#44581) * Improve credential reuse code sample for ASP.NET Core * Update redirect entry and ToC * Update code samples * Update line numbers * Add explanations for code snippets * Update code samples * Update file name * Update file path --- .openpublishing.redirection.azure.json | 4 ++ docs/azure/TOC.yml | 2 +- ...on-best-practices.md => best-practices.md} | 12 +++--- .../authentication/Directory.Packages.props | 4 +- .../best-practices/BestPractices.sln | 36 ++++++++++++++++++ .../ConfidentialClientApp.csproj} | 3 +- .../best-practices/{ => CCA}/Program.cs | 38 ++++++++----------- .../{ => CCA}/Properties/launchSettings.json | 0 .../{ => CCA}/appsettings.Development.json | 0 .../best-practices/{ => CCA}/appsettings.json | 0 .../best-practices/PCA/App.xaml | 9 +++++ .../best-practices/PCA/App.xaml.cs | 13 +++++++ .../best-practices/PCA/AssemblyInfo.cs | 10 +++++ .../best-practices/PCA/MainWindow.xaml | 12 ++++++ .../best-practices/PCA/MainWindow.xaml.cs | 36 ++++++++++++++++++ .../best-practices/PCA/PublicClientApp.csproj | 18 +++++++++ 16 files changed, 166 insertions(+), 31 deletions(-) rename docs/azure/sdk/authentication/{authentication-best-practices.md => best-practices.md} (87%) create mode 100644 docs/azure/sdk/snippets/authentication/best-practices/BestPractices.sln rename docs/azure/sdk/snippets/authentication/best-practices/{AuthBestPractices.csproj => CCA/ConfidentialClientApp.csproj} (81%) rename docs/azure/sdk/snippets/authentication/best-practices/{ => CCA}/Program.cs (63%) rename docs/azure/sdk/snippets/authentication/best-practices/{ => CCA}/Properties/launchSettings.json (100%) rename docs/azure/sdk/snippets/authentication/best-practices/{ => CCA}/appsettings.Development.json (100%) rename docs/azure/sdk/snippets/authentication/best-practices/{ => CCA}/appsettings.json (100%) create mode 100644 docs/azure/sdk/snippets/authentication/best-practices/PCA/App.xaml create mode 100644 docs/azure/sdk/snippets/authentication/best-practices/PCA/App.xaml.cs create mode 100644 docs/azure/sdk/snippets/authentication/best-practices/PCA/AssemblyInfo.cs create mode 100644 docs/azure/sdk/snippets/authentication/best-practices/PCA/MainWindow.xaml create mode 100644 docs/azure/sdk/snippets/authentication/best-practices/PCA/MainWindow.xaml.cs create mode 100644 docs/azure/sdk/snippets/authentication/best-practices/PCA/PublicClientApp.csproj diff --git a/.openpublishing.redirection.azure.json b/.openpublishing.redirection.azure.json index d5f59ae803c4f..83f2317823183 100644 --- a/.openpublishing.redirection.azure.json +++ b/.openpublishing.redirection.azure.json @@ -123,6 +123,10 @@ { "source_path_from_root": "/docs/azure/sdk/azure-sdk-configure-proxy.md", "redirect_url": "/dotnet/azure/sdk/configure-proxy" + }, + { + "source_path_from_root": "/docs/azure/sdk/authentication/authentication-best-practices.md", + "redirect_url": "/dotnet/azure/sdk/authentication/best-practices" } ] } diff --git a/docs/azure/TOC.yml b/docs/azure/TOC.yml index 402d6fad001a1..8d7bff74f9f9f 100644 --- a/docs/azure/TOC.yml +++ b/docs/azure/TOC.yml @@ -76,7 +76,7 @@ - name: Credential chains href: ./sdk/authentication/credential-chains.md - name: Best practices - href: ./sdk/authentication/authentication-best-practices.md + href: ./sdk/authentication/best-practices.md - name: ASP.NET Core guidance href: ./sdk/aspnetcore-guidance.md - name: Resource management diff --git a/docs/azure/sdk/authentication/authentication-best-practices.md b/docs/azure/sdk/authentication/best-practices.md similarity index 87% rename from docs/azure/sdk/authentication/authentication-best-practices.md rename to docs/azure/sdk/authentication/best-practices.md index 9130f6278c570..6a327317dbe34 100644 --- a/docs/azure/sdk/authentication/authentication-best-practices.md +++ b/docs/azure/sdk/authentication/best-practices.md @@ -2,7 +2,7 @@ title: Authentication best practices with the Azure Identity library for .NET description: This article describes authentication best practices to follow when using the Azure Identity library for .NET. ms.topic: conceptual -ms.date: 01/24/2025 +ms.date: 01/29/2025 --- # Authentication best practices with the Azure Identity library for .NET @@ -48,15 +48,17 @@ The recommended credential reuse strategy differs by .NET application type. # [ASP.NET Core](#tab/aspdotnet) -Implement credential reuse through the `UseCredential` method of `Microsoft.Extensions.Azure`: +Implement credential reuse through the method of `Microsoft.Extensions.Azure`. For example, imagine an ASP.NET Core app hosted on Azure App Service, with a `UserAssignedClientId` environment variable set. The .NET configuration provider determines the environment variable exists, and `ManagedIdentityCredential` will be used to authenticate the Key Vault Secrets and Blob Storage clients. Otherwise, a chained sequence of development-time credentials is used. -:::code language="csharp" source="../snippets/authentication/best-practices/Program.cs" id="snippet_credential_reuse_Dac" highlight="6" ::: +:::code language="csharp" source="../snippets/authentication/best-practices/CCA/Program.cs" id="snippet_credential_reuse_AspNetCore" highlight="16"::: For information on this approach, see [Authenticate using Microsoft Entra ID](/dotnet/azure/sdk/aspnetcore-guidance?tabs=api#authenticate-using-microsoft-entra-id). # [Other](#tab/other) -:::code language="csharp" source="../snippets/authentication/best-practices/Program.cs" id="snippet_credential_reuse_noDac" highlight="8, 12" ::: +In non-ASP.NET Core apps, credential reuse is accomplished by passing the same credential instance to each client constructor. For example, imagine a WPF app using the authentication broker on Windows. + +:::code language="csharp" source="../snippets/authentication/best-practices/PCA/MainWindow.xaml.cs" id="snippet_credential_reuse_nonAspNetCore" highlight="12, 16"::: --- @@ -77,6 +79,6 @@ The Azure Identity library for .NET allows you to authenticate via managed ident - The time interval between retries starts at 0.8 seconds, and a maximum of five retries are attempted, by default. This option is optimized for resilience but introduces potentially unwanted delays in the development inner loop. - To change any of the default retry settings, use the `Retry` property on `ManagedIdentityCredentialOptions`. For example, retry a maximum of three times, with a starting interval of 0.5 seconds: - :::code language="csharp" source="../snippets/authentication/best-practices/Program.cs" id="snippet_retries" highlight="5-9" ::: + :::code language="csharp" source="../snippets/authentication/best-practices/CCA/Program.cs" id="snippet_retries" highlight="5-9"::: For more information on customizing retry policies, see [Setting a custom retry policy](https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/core/Azure.Core/samples/Configuration.md#setting-a-custom-retry-policy). diff --git a/docs/azure/sdk/snippets/authentication/Directory.Packages.props b/docs/azure/sdk/snippets/authentication/Directory.Packages.props index 6a7584c99a6ae..64bda2aecce28 100644 --- a/docs/azure/sdk/snippets/authentication/Directory.Packages.props +++ b/docs/azure/sdk/snippets/authentication/Directory.Packages.props @@ -5,8 +5,8 @@ - - + + diff --git a/docs/azure/sdk/snippets/authentication/best-practices/BestPractices.sln b/docs/azure/sdk/snippets/authentication/best-practices/BestPractices.sln new file mode 100644 index 0000000000000..74b689c3614e1 --- /dev/null +++ b/docs/azure/sdk/snippets/authentication/best-practices/BestPractices.sln @@ -0,0 +1,36 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.13.35716.79 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConfidentialClientApp", "CCA\ConfidentialClientApp.csproj", "{6FB4D659-156E-C79B-1602-D99A3B0BC1B8}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PublicClientApp", "PCA\PublicClientApp.csproj", "{0C902D2D-2B8D-479A-C29F-90EF265B1666}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{02EA681E-C7D8-13C7-8484-4AC65E1B71E8}" + ProjectSection(SolutionItems) = preProject + ..\..\Directory.Packages.props = ..\..\Directory.Packages.props + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {6FB4D659-156E-C79B-1602-D99A3B0BC1B8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6FB4D659-156E-C79B-1602-D99A3B0BC1B8}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6FB4D659-156E-C79B-1602-D99A3B0BC1B8}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6FB4D659-156E-C79B-1602-D99A3B0BC1B8}.Release|Any CPU.Build.0 = Release|Any CPU + {0C902D2D-2B8D-479A-C29F-90EF265B1666}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0C902D2D-2B8D-479A-C29F-90EF265B1666}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0C902D2D-2B8D-479A-C29F-90EF265B1666}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0C902D2D-2B8D-479A-C29F-90EF265B1666}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {8002C7E1-9D56-4063-BFEF-6CDB73707080} + EndGlobalSection +EndGlobal diff --git a/docs/azure/sdk/snippets/authentication/best-practices/AuthBestPractices.csproj b/docs/azure/sdk/snippets/authentication/best-practices/CCA/ConfidentialClientApp.csproj similarity index 81% rename from docs/azure/sdk/snippets/authentication/best-practices/AuthBestPractices.csproj rename to docs/azure/sdk/snippets/authentication/best-practices/CCA/ConfidentialClientApp.csproj index 5e7b705f2e39c..00599c753d402 100644 --- a/docs/azure/sdk/snippets/authentication/best-practices/AuthBestPractices.csproj +++ b/docs/azure/sdk/snippets/authentication/best-practices/CCA/ConfidentialClientApp.csproj @@ -1,9 +1,10 @@ - + net9.0 enable enable + ASP.NET Core diff --git a/docs/azure/sdk/snippets/authentication/best-practices/Program.cs b/docs/azure/sdk/snippets/authentication/best-practices/CCA/Program.cs similarity index 63% rename from docs/azure/sdk/snippets/authentication/best-practices/Program.cs rename to docs/azure/sdk/snippets/authentication/best-practices/CCA/Program.cs index 44c8df93465b6..33186d5fe9f09 100644 --- a/docs/azure/sdk/snippets/authentication/best-practices/Program.cs +++ b/docs/azure/sdk/snippets/authentication/best-practices/CCA/Program.cs @@ -1,39 +1,33 @@ -using Azure.Identity; -using Azure.Security.KeyVault.Secrets; -using Azure.Storage.Blobs; +using Azure.Core; +using Azure.Identity; using Microsoft.Extensions.Azure; -var userAssignedClientId = ""; +var clientId = ""; var builder = WebApplication.CreateBuilder(args); -#region snippet_credential_reuse_Dac +#region snippet_credential_reuse_AspNetCore builder.Services.AddAzureClients(clientBuilder => { clientBuilder.AddSecretClient(new Uri("")); clientBuilder.AddBlobServiceClient(new Uri("")); - clientBuilder.UseCredential(new DefaultAzureCredential()); -}); -#endregion snippet_credential_reuse_Dac - -#region snippet_credential_reuse_noDac -ChainedTokenCredential credentialChain = new( - new ManagedIdentityCredential( - ManagedIdentityId.FromUserAssignedClientId(userAssignedClientId)), - new VisualStudioCredential()); + string? clientId = builder.Configuration["UserAssignedClientId"]; -BlobServiceClient blobServiceClient = new( - new Uri(""), - credentialChain); + TokenCredential credential = clientId is not null + ? new ManagedIdentityCredential( + ManagedIdentityId.FromUserAssignedClientId(clientId)) + : new ChainedTokenCredential( + new VisualStudioCredential(), + new AzureCliCredential(), + new AzurePowerShellCredential()); -SecretClient secretClient = new( - new Uri(""), - credentialChain); -#endregion snippet_credential_reuse_noDac + clientBuilder.UseCredential(credential); +}); +#endregion snippet_credential_reuse_AspNetCore #region snippet_retries ManagedIdentityCredentialOptions miCredentialOptions = new( - ManagedIdentityId.FromUserAssignedClientId(userAssignedClientId) + ManagedIdentityId.FromUserAssignedClientId(clientId) ) { Retry = diff --git a/docs/azure/sdk/snippets/authentication/best-practices/Properties/launchSettings.json b/docs/azure/sdk/snippets/authentication/best-practices/CCA/Properties/launchSettings.json similarity index 100% rename from docs/azure/sdk/snippets/authentication/best-practices/Properties/launchSettings.json rename to docs/azure/sdk/snippets/authentication/best-practices/CCA/Properties/launchSettings.json diff --git a/docs/azure/sdk/snippets/authentication/best-practices/appsettings.Development.json b/docs/azure/sdk/snippets/authentication/best-practices/CCA/appsettings.Development.json similarity index 100% rename from docs/azure/sdk/snippets/authentication/best-practices/appsettings.Development.json rename to docs/azure/sdk/snippets/authentication/best-practices/CCA/appsettings.Development.json diff --git a/docs/azure/sdk/snippets/authentication/best-practices/appsettings.json b/docs/azure/sdk/snippets/authentication/best-practices/CCA/appsettings.json similarity index 100% rename from docs/azure/sdk/snippets/authentication/best-practices/appsettings.json rename to docs/azure/sdk/snippets/authentication/best-practices/CCA/appsettings.json diff --git a/docs/azure/sdk/snippets/authentication/best-practices/PCA/App.xaml b/docs/azure/sdk/snippets/authentication/best-practices/PCA/App.xaml new file mode 100644 index 0000000000000..b45e34c0aaecb --- /dev/null +++ b/docs/azure/sdk/snippets/authentication/best-practices/PCA/App.xaml @@ -0,0 +1,9 @@ + + + + + diff --git a/docs/azure/sdk/snippets/authentication/best-practices/PCA/App.xaml.cs b/docs/azure/sdk/snippets/authentication/best-practices/PCA/App.xaml.cs new file mode 100644 index 0000000000000..203ee1ec8bcd0 --- /dev/null +++ b/docs/azure/sdk/snippets/authentication/best-practices/PCA/App.xaml.cs @@ -0,0 +1,13 @@ +using System.Configuration; +using System.Data; +using System.Windows; + +namespace PublicClientAppAuthBestPractices; + +///

+/// Interaction logic for App.xaml +/// +public partial class App : Application +{ +} + diff --git a/docs/azure/sdk/snippets/authentication/best-practices/PCA/AssemblyInfo.cs b/docs/azure/sdk/snippets/authentication/best-practices/PCA/AssemblyInfo.cs new file mode 100644 index 0000000000000..cc29e7f74114a --- /dev/null +++ b/docs/azure/sdk/snippets/authentication/best-practices/PCA/AssemblyInfo.cs @@ -0,0 +1,10 @@ +using System.Windows; + +[assembly:ThemeInfo( + ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located + //(used if a resource is not found in the page, + // or application resource dictionaries) + ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located + //(used if a resource is not found in the page, + // app, or any theme specific resource dictionaries) +)] diff --git a/docs/azure/sdk/snippets/authentication/best-practices/PCA/MainWindow.xaml b/docs/azure/sdk/snippets/authentication/best-practices/PCA/MainWindow.xaml new file mode 100644 index 0000000000000..3e0af8a51c730 --- /dev/null +++ b/docs/azure/sdk/snippets/authentication/best-practices/PCA/MainWindow.xaml @@ -0,0 +1,12 @@ + + +