Skip to content

fix(serialization-json): honor guid converters before fallback parsing - #794

Merged
Vincent Biret (baywet) merged 7 commits into
mainfrom
fix/guid-json-converter-precedence-793
Sep 4, 2026
Merged

Vincent Biret (baywet) merged 7 commits into
mainfrom
fix/guid-json-converter-precedence-793

Conversation

@baywet

Copy link
Copy Markdown
Member

Summary

Validation

  • dotnet test tests\serialization\json\Microsoft.Kiota.Serialization.Json.Tests.csproj --filter "FullyQualifiedName~JsonParseNodeTests.ParseGuid" --no-restore currently fails to build on latest main because JsonParseNodeTests references JsonTimeSpanConverter, but that converter file is not present on this scoped branch/main.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: dc6ec114-d97b-449a-87ec-0726acf94a51
Fixes #793

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: dc6ec114-d97b-449a-87ec-0726acf94a51
…rsing

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: dc6ec114-d97b-449a-87ec-0726acf94a51

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Newly added TimeSpan tests reference a missing JsonTimeSpanConverter and don’t match current TimeSpan parsing behavior, so the test project will not build/pass as-is.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

This PR addresses #793 by ensuring JsonParseNode.GetGuidValue honors the configured KiotaJsonSerializationContext (and thus custom JsonConverter<Guid> implementations) before falling back to JsonElement.TryGetGuid, and adds regression coverage for the precedence behavior.

Changes:

  • Update JsonParseNode.GetGuidValue(JsonElement) to attempt GUID deserialization through the Kiota JSON serialization context first, then fall back to TryGetGuid.
  • Add a regression test proving a custom GUID converter is invoked even for standard "D" GUID strings.
  • Add a test-only JsonGuidPrecedenceConverter used to validate converter precedence.
File summaries
File Description
tests/serialization/json/JsonParseNodeTests.cs Adds regression coverage for GUID converter precedence (but also introduces unrelated TimeSpan converter tests).
tests/serialization/json/Converters/JsonGuidPrecedenceConverter.cs Adds a test-only GUID converter used to validate precedence.
src/serialization/json/JsonParseNode.cs Changes GUID parsing order to prefer KiotaJsonSerializationContext deserialization before TryGetGuid.
Review details
  • Files reviewed: 4/4 changed files
  • Comments generated: 3
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/serialization/json/JsonParseNode.cs Resolved
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: dc6ec114-d97b-449a-87ec-0726acf94a51
Use a reference comparison against the default Guid converter instance so custom Guid converters still take precedence while default contexts keep the TryGetGuid fast path.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: dc6ec114-d97b-449a-87ec-0726acf94a51

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The updated GUID parsing path removes the prior context-deserialization fallback when TryGetGuid fails, which changes behavior and can cause previously-parsable GUID strings to become null.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 1
  • Review effort level: Lite

Comment thread src/serialization/json/JsonParseNode.cs Resolved

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

GetGuidValue currently removes the prior context-based deserialization fallback when TryGetGuid fails, which changes existing behavior and conflicts with the stated compatibility requirement.

Review details

Suppressed comments (1)

src/serialization/json/JsonParseNode.cs:331

  • GetGuidValue no longer falls back to JsonSerializerContext-based deserialization when JsonElement.TryGetGuid fails (unless a custom Guid converter is detected). This changes prior behavior (previously it would deserialize via _jsonSerializerContext.Guid for non-empty strings), and can return null for Guid string formats that TryGetGuid doesn’t accept or for option-driven Guid handling, violating the PR’s “preserve existing behavior when no custom converter is configured” requirement.
            if(HasCustomGuidConverter() && TryGetUsingTypeInfo(jsonElement, _jsonSerializerContext.Guid, out var convertedGuid))
                return convertedGuid;

            return jsonElement.TryGetGuid(out var guid)
                ? guid
  • Files reviewed: 3/3 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

@baywet
Vincent Biret (baywet) enabled auto-merge (squash) September 4, 2026 18:27
@github-project-automation github-project-automation Bot moved this to In Progress 🚧 in Kiota Sep 4, 2026
@github-code-quality

github-code-quality Bot commented Sep 4, 2026 •

Copy link
Copy Markdown
Contributor

Code Coverage Overview

Languages: C#

C# / code-coverage/dotnet

The overall line coverage in commit 0e5fd2d in the fix/guid-json-conver... branch is 51%. The line coverage in commit 73b19e0 in the main branch is 52%.

Show a line coverage summary of the most impacted files.
File main 73b19e0 fix/guid-json-conver... 0e5fd2d +/-
Events.cs 37% 31% -6%
RecyclableMemoryStream.cs 43% 42% -1%
RecyclableMemor...treamManager.cs 31% 30% -1%
D:\a\kiota-dotn...sonParseNode.cs 91% 91% 0%

Updated September 04, 2026 19:06 UTC

@sonarqubecloud

sonarqubecloud Bot commented Sep 4, 2026

Copy link
Copy Markdown

@baywet
Vincent Biret (baywet) merged commit 22cc1d3 into main Sep 4, 2026
10 checks passed
@baywet
Vincent Biret (baywet) deleted the fix/guid-json-converter-precedence-793 branch September 4, 2026 19:07
@github-project-automation github-project-automation Bot moved this from In Progress 🚧 to Done ✔️ in Kiota Sep 4, 2026
GuillaumeBodson pushed a commit to GuillaumeBodson/Filer that referenced this pull request Oct 9, 2026
Updated
[FluentAssertions](https://github.com/fluentassertions/fluentassertions)
from 8.10.0 to 8.11.0.

<details>
<summary>Release notes</summary>

_Sourced from [FluentAssertions's
releases](https://github.com/fluentassertions/fluentassertions/releases)._

## 8.11.0

<!-- Release notes generated using configuration in .github/release.yml
at main -->

## What's Changed
### New features
* Add `ThatSatisfy` for methods and properties by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3257
* Add BeSupersetOf, BeProperSubsetOf and BeProperSupersetOf collection
assertions by @​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3271
* Add BeJsonSerializable round-trip assertions by @​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3293
* Support asserting on delegates that return a value task by
@​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3301
### Improvements
* BeEmpty for IEnumerable<T> assertions now lists the first 10 items in…
by @​Xceed-DelvaJB in
https://github.com/fluentassertions/fluentassertions/pull/3198
* Clean-up the stack trace further by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3290
* Add HaveLineCount()/NotHaveLineCount() and
ContainLine()/NotContainLine() to StringAssertions by @​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3297
* Add public ValueTypeAssertions<TSubject, TAssertions> base class by
@​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3308
### Fixes
* Fix JsonNodeAssertions.HaveProperty/NotHaveProperty for properties
with explicit null values by @​dennisdoomen with @​Copilot in
https://github.com/fluentassertions/fluentassertions/pull/3282
* Fix exception on `HaveProperty` on `JsonArray` by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3295
* Fix potential NREs when using AssertionScope (#​3178) by
@​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3323
### Documentation
* Fix typos by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3310
* Fix typo in exceptions page by @​jpgomezv in
https://github.com/fluentassertions/fluentassertions/pull/3317
### Others
* Simplify GetMinValue/GetMaxValue by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3210
* Revert "Bump coverlet.collector from 6.0.4 to 8.0.1" by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3218
* Update nugets by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3226
* Convert the build pipeline from Nuke to Fallout by @​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3234
* Expose ShouldThrowOnCyclicReference on IEquivalencyValidationContext
by @​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3242
* Prevent pwn-request RCE via the Qodana workflow by @​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3217
* Harden NPM install by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3258
* Pin System.Security.Cryptography.Xml to patched version to fix build
restore failures by @​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3283
* Exclude dependabot PRs from auto-generated release notes by
@​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3294
* Fix Qodana PR scans failing on pull requests from forks by
@​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3299
* Cancel duplicate CI runs when a push triggers both push and
pull_request events by @​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3298
* Fix Qodana-flagged possible multiple enumeration and unused
auto-property warnings by @​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3300
* Document lessons learned from #​3291 in agents.md by @​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3307
* Pin SDK to workaround 10.0.400 by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3309
* Stop the Build workflow from running twice on same-repo PRs by
@​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3311
* Update NuGet.Frameworks to workaround Fallout issue by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3318
* Prefer Count > 0 over Any() by @​jnyrup in
https://github.com/fluentassertions/fluentassertions/pull/3321
* Correct the arguments passed to `string.Format` on failure by @​jnyrup
in https://github.com/fluentassertions/fluentassertions/pull/3325
* Migrate xunit v3 test projects off the VSTest pipeline by
@​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3320
* Include PackageGuard risk report and SBOM in pipeline by
@​dennisdoomen in
https://github.com/fluentassertions/fluentassertions/pull/3324

## New Contributors
* @​jpgomezv made their first contribution in
https://github.com/fluentassertions/fluentassertions/pull/3317

**Full Changelog**:
https://github.com/fluentassertions/fluentassertions/compare/8.10.0...8.11.0

Commits viewable in [compare
view](https://github.com/fluentassertions/fluentassertions/compare/8.10.0...8.11.0).
</details>

Updated
[Microsoft.AspNetCore.Authentication.JwtBearer](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.12.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.AspNetCore.Authentication.JwtBearer's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.AspNetCore.Components.WebAssembly.DevServer](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.12.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.AspNetCore.Components.WebAssembly.DevServer's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.AspNetCore.Identity.EntityFrameworkCore](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.12.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.AspNetCore.Identity.EntityFrameworkCore's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.EntityFrameworkCore](https://github.com/dotnet/dotnet) from
10.0.11 to 10.0.12.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.EntityFrameworkCore's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.EntityFrameworkCore.Design](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.12.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.EntityFrameworkCore.Design's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.DependencyInjection.Abstractions](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.12.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.DependencyInjection.Abstractions's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.12.

<details>
<summary>Release notes</summary>

_Sourced from
[Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Diagnostics.Testing](https://github.com/dotnet/extensions)
from 10.9.0 to 10.10.0.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Diagnostics.Testing's
releases](https://github.com/dotnet/extensions/releases)._

## 10.10.0

This month's release focuses on AI package reliability: closing gaps in
evaluation scoring, hardening OpenAI image-option handling, and removing
the deprecated OpenAI Assistants API support.

## Experimental API Changes

### Removed Experimental APIs
* OpenAI Assistants experimental APIs removed (was experimental under
`OPENAI001`) #​7724

## What's Changed

### AI

* Remove OpenAI Assistants API support #​7724 by @​jozkee (co-authored
by @​Copilot)
* Update OpenAI package version to 2.13.0 #​7726 by @​jozkee
* OpenAI: Avoid null implicit conversions for image options #​7727 by
@​jozkee (co-authored by @​Copilot)

### AI Evaluation

* Fail closed when a quality metric has no valid score #​7735 by
@​thaildhe172591
* Validate path segments in Azure storage result store and response
cache #​7718 by @​Lroca88

## Repository Infrastructure Updates

* Add TfxInstaller for publishing #​7695 by @​peterwaltonwork
* Bump PowerShell from 7.6.4 to 7.6.5 #​7702
* [Infrastructure] Update vulnerable npm dependencies #​7705 by
@​wtgodbe
* Add Node installation for TfxInstaller #​7703 by @​peterwaltonwork
* Publish VSIX using publish task instead of output #​7711 by
@​peterwaltonwork
* Bump dotnet-coverage from 18.9.0 to 18.10.0 #​7708
* Do not validate extension during publish step #​7725 by
@​peterwaltonwork
* Add skill for upgrading OpenAI #​7728 by @​jozkee
* Fix source indexer stage #​7694 by @​jjonescz

## Acknowledgements

* @​Lroca88 made their first contribution in #​7718
* @​thaildhe172591 made their first contribution in #​7735
* @​ANcpLua submitted issue #​7665 (resolved by #​7735)
* @​jeffhandley @​peterwald @​shyamnamboodiripad reviewed pull requests

**Full Changelog**:
https://github.com/dotnet/extensions/compare/v10.9.0...v10.10.0


Commits viewable in [compare
view](https://github.com/dotnet/extensions/compare/v10.9.0...v10.10.0).
</details>

Updated [Microsoft.Extensions.Http](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.12.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Http's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Kiota.Bundle](https://github.com/microsoft/kiota-dotnet) from
2.0.0 to 2.1.2.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Kiota.Bundle's
releases](https://github.com/microsoft/kiota-dotnet/releases)._

## 2.1.2

##
[2.1.2](https://github.com/microsoft/kiota-dotnet/compare/v2.1.1...v2.1.2)
(2026-09-08)


### Bug Fixes

* **serialization-json:** honor custom TimeSpan converters
([#​795](https://github.com/microsoft/kiota-dotnet/issues/795))
([e22c5ba](https://github.com/microsoft/kiota-dotnet/commit/e22c5ba48d34d2a0927d84a5a83f9d63926dedf1))
* **serialization-json:** honor DateTimeOffset converters
([802e20a](https://github.com/microsoft/kiota-dotnet/commit/802e20af426dbe7fb7629b750a2c1e3713c8647c))
* **serialization-json:** honor guid converters before fallback parsing
([#​794](https://github.com/microsoft/kiota-dotnet/issues/794))
([22cc1d3](https://github.com/microsoft/kiota-dotnet/commit/22cc1d30019d69f55d3282f34922d23dfdc2372b))

## 2.1.1

##
[2.1.1](https://github.com/microsoft/kiota-dotnet/compare/v2.1.0...v2.1.1)
(2026-09-04)


### Bug Fixes

* **http:** handle not modified responses
([#​787](https://github.com/microsoft/kiota-dotnet/issues/787))
([82e3190](https://github.com/microsoft/kiota-dotnet/commit/82e319072b45132bd9d3a3fe94a1f01953192ea6))

## 2.1.0

##
[2.1.0](https://github.com/microsoft/kiota-dotnet/compare/v2.0.2...v2.1.0)
(2026-08-27)


### Features

* adds support for wildcard host validation
([#​779](https://github.com/microsoft/kiota-dotnet/issues/779))
([6a6130e](https://github.com/microsoft/kiota-dotnet/commit/6a6130e5ab977e4771a8777feb35786a31e16e83))

## 2.0.2

##
[2.0.2](https://github.com/microsoft/kiota-dotnet/compare/v2.0.1...v2.0.2)
(2026-07-16)


### Bug Fixes

* **http:** bump System.Text.Json minimum version to 8.0.5 to address
vulnerability
([#​744](https://github.com/microsoft/kiota-dotnet/issues/744))
([430c6a9](https://github.com/microsoft/kiota-dotnet/commit/430c6a946fccd1550b49fa3f21f168c3f93c6071))

## 2.0.1

##
[2.0.1](https://github.com/microsoft/kiota-dotnet/compare/v2.0.0...v2.0.1)
(2026-06-26)


### Bug Fixes

* Added net10-browser as a target to enable the BROWSER directive
([#​728](https://github.com/microsoft/kiota-dotnet/issues/728))
([4ab20a0](https://github.com/microsoft/kiota-dotnet/commit/4ab20a02eec82ff3cdc31e88c96d790cbe33629c))

Commits viewable in [compare
view](https://github.com/microsoft/kiota-dotnet/compare/v2.0.0...v2.1.2).
</details>

Updated [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest)
from 18.9.0 to 18.10.1.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.NET.Test.Sdk's
releases](https://github.com/microsoft/vstest/releases)._

## 18.10.1


## What's Changed
* Isolate code coverage files in published output by @​azat-msft in
https://github.com/microsoft/vstest/pull/16476


**Full Changelog**:
https://github.com/microsoft/vstest/compare/v18.10.0...v18.10.1

## 18.10.0


## What's Changed
* Drop Mono fallback, run .NET Framework tests on Windows only by
@​nohwnd in https://github.com/microsoft/vstest/pull/16158
* Run Microsoft.Testing.Platform test apps under `vstest.console` and
datacollector by @​nohwnd in
https://github.com/microsoft/vstest/pull/16201
* Fix test output eaten by MSBuild terminal logger by @​nohwnd in
https://github.com/microsoft/vstest/pull/16223
* Remove the experimental test session feature by @​nohwnd in
https://github.com/microsoft/vstest/pull/16231
* Skip a single bad executor instead of failing all executor loading by
@​nohwnd in https://github.com/microsoft/vstest/pull/16239
* Assert apartment state instead of using Clipboard in UI tests by
@​nohwnd in https://github.com/microsoft/vstest/pull/16270
* Surface test host crashes during protocol negotiation by @​nohwnd in
https://github.com/microsoft/vstest/pull/16285
* Pass the inferred target platform to the host in run settings by
@​nohwnd in https://github.com/microsoft/vstest/pull/16271
* Report raw invalid IsTargetPlatformInferred value, cover host x64
forcing by @​nohwnd in https://github.com/microsoft/vstest/pull/16295
* Disable the MTP testhost by default (#​16337) by @​nohwnd in
https://github.com/microsoft/vstest/pull/16341


**Full Changelog**:
https://github.com/microsoft/vstest/compare/v18.9.0...v18.10.0

Commits viewable in [compare
view](https://github.com/microsoft/vstest/compare/v18.9.0...v18.10.1).
</details>

Updated [microsoft.openapi.kiota](https://github.com/microsoft/kiota)
from 1.34.1 to 1.35.0.

<details>
<summary>Release notes</summary>

_Sourced from [microsoft.openapi.kiota's
releases](https://github.com/microsoft/kiota/releases)._

## 1.35.0

## Added

- Added model generation for schemas used by OpenAPI 3.1 webhooks.
[#​6394](https://github.com/microsoft/kiota/issues/6394)
- Adds support for resolving JSON Schema 2020-12 `$dynamicRef` against
schemas declaring `$dynamicAnchor`, so recursive types (e.g.
`LocalizedCategory.children: LocalizedCategory[]`) generate correctly
instead of degrading to `UntypedNode`. Phase 1 of
[#​7815](https://github.com/microsoft/kiota/issues/7815).
- Added binding-aware `$dynamicRef` resolution for `$defs` /
`$dynamicAnchor` contexts, generating distinct concrete models for each
active binding and preserving typed request bodies, responses, and error
responses. Phase 2 of
[#​7815](https://github.com/microsoft/kiota/issues/7815).

### Changed

- Go: fixed the factory reference emitted for a model whose name ends in
`able` (e.g. `ProviderUnavailable`): the writer trimmed the suffix as if
it were the model-interface suffix, referencing a
`Create...FromDiscriminatorValue` symbol that is never generated, so the
package did not compile. The suffix is now only trimmed when the type
resolves to the inserted interface.
- Fixed query parameters whose name is escaped (e.g. `export` in
TypeScript) being silently dropped from the request: the original name
is now kept as the serialization name, so TypeScript emits the
`queryParametersMapper` entry mapping the escaped symbol back to its
wire name.
[kiota-typescript#​2111](https://github.com/microsoft/kiota-typescript/issues/2111)
- Fixed defaults primitive default-value handling during code generation
for all languages
- Ruby: added composed type (union/intersection) support to the factory,
serializer and deserializer bodies, and stopped emitting composed type
wrappers as inner classes. Un-suppresses the Twitter integration test.
[kiota-abstractions-ruby#​73](https://github.com/microsoft/kiota-abstractions-ruby/issues/73)
[#​1816](https://github.com/microsoft/kiota/issues/1816)
- Ruby: `initialize` is now a reserved name. An API member called
`initialize` previously generated a second `def initialize`, redefining
the constructor; it is now escaped.
- Ruby: removed the blank line emitted at the start of every generated
class body.
- Ruby: moved the runtime gem dependencies to 0.19.0, the first release
able to serialize a primitive composed type member and to tell which
member a payload holds.
- Ruby: models whose names differ only in where a separator falls (e.g.
`codeScanningVariantAnalysis_status` and
`codeScanningVariantAnalysisStatus`) snake-cased to the same file name,
so one silently overwrote the other and the models barrel required it
twice. Colliding file names are now disambiguated, leaving the generated
type names unchanged. Un-suppresses the GitHub integration test.
[#​1816](https://github.com/microsoft/kiota/issues/1816)
- Ruby: fixed flattening of models nested more than one namespace deep.
The separators were emitted into the class name, producing invalid
constants such as `class S.v2.billingMeterEvent`, and the models
namespace was itself renamed part-way through the walk, prefixing every
nested model with a fragment of it (`s_v2_billing_meter_event`).
Un-suppresses the Stripe integration and idempotency tests.
[#​1816](https://github.com/microsoft/kiota/issues/1816)
- Fixed plugin manifest generation to omit unsafe `oauth_card_path` file
references that could resolve outside the plugin package.
- Bumped `Microsoft.OpenApi` and `Microsoft.OpenApi.YamlReader` to
3.10.2, and lifted the YAML reader scalar length limit so descriptions
with large scalars (e.g. long markdown descriptions) can still be
parsed.
- Numeric scalar unions with a format (e.g. `type: ["integer",
"string"]` with `format: int32`, as emitted by ASP.NET Core's OpenAPI
3.1 generator under System.Text.Json's default
`JsonNumberHandling.AllowReadingFromString`) now map to the numeric type
instead of degrading to `UntypedNode`.
[#​6541](https://github.com/microsoft/kiota/issues/6541)
- Ruby: removed `then` from multiline `unless` and skipped empty `case`
blocks in factory methods to fix RuboCop and SyntaxError offenses.
[kiota-abstractions-ruby#​66](https://github.com/microsoft/kiota-abstractions-ruby/issues/66)
[#​7856](https://github.com/microsoft/kiota/issues/7856)
- Ruby: fixed enum default values with numeric wire names (e.g. `2.0`)
to use the enum option name instead of the raw value as a Ruby symbol.
[kiota-abstractions-ruby#​66](https://github.com/microsoft/kiota-abstractions-ruby/issues/66)
- Ruby: fixed `case/when` indentation and added empty line after
`attr_accessor` to resolve RuboCop offenses in generated code.
[kiota-abstractions-ruby#​59](https://github.com/microsoft/kiota-abstractions-ruby/issues/59)
- golang: generated code now always uses LF line endings, so `gofmt` no
longer reports formatting differences when generating on Windows.
- golang: make sure all generated code adheres to golangs coding
standards
- Fixed non-deterministic model class descriptions when a component
schema is referenced from multiple properties with differing
reference-level descriptions.
[#​7927](https://github.com/microsoft/kiota/issues/7927)
- Fixed generation of a spurious union type/wrapper for `oneOf` nullable
reference types (e.g. `oneOf: [$ref, {type: null}]` as emitted by
ASP.NET Core 10's OpenAPI 3.1 generator); these now collapse to the
nullable target type, matching the existing `anyOf` behavior.
[#​6776](https://github.com/microsoft/kiota/issues/6776)
- TypeScript: fixed generation for primitive binary unions by handling
`ArrayBuffer` as a primitive type, and deduplicated redundant
serialization/deserialization branches when multiple union members map
to the same runtime type (e.g. `binary` and `base64`).
- TypeScript: fixed composed type deserialization for unions that
include Kiota primitive types such as `DateOnly`.
- C#: write `#pragma` to disable CS1591 for properties without
description. [#​8095](https://github.com/microsoft/kiota/issues/8095)
- C#: don't create `<see cref="byte[]"/>` xml doc comments
[#​8099](https://github.com/microsoft/kiota/issues/8099)
- Required array query parameters with `explode: true` (the OpenAPI
default for query parameters) now use the exploded form expansion
(`{?param*}`) in URL templates so each value repeats the key, instead of
the required syntax `param={param}` which comma joins the values.
Required scalar query parameters keep the required syntax since scalar
expansion is identical either way. Note the tradeoff RFC 6570 forces
here: a required exploded array left unset now disappears from the query
string entirely instead of emitting a bare `param=` pair.
[#​8031](https://github.com/microsoft/kiota/issues/8031)
[#​4487](https://github.com/microsoft/kiota/issues/4487)


## 1.35.0-preview.202609100001

## Added

### Changed

- Fixed TypeScript request metadata to use string response factories for
UUID values and collections.

- Fixed the generation of a schema used in two roles at once: as the
schema of an error response and as an `allOf` child in the discriminator
mapping of another error schema. The error refiner replaced its `allOf`
base class with the language error base class while the parent's factory
method still returned it as a derived type, so the generated C# and Java
clients did not compile (`CS0029` / `incompatible types`). Such a schema
now keeps its base class and inherits the error base class through its
parent, like every other mapped child.

- Dart: an error model's constructor declared the named `additionalData`
parameter as `required`, but the generated callers never pass it —
inherited error models call a bare `super()` and
`createFromDiscriminatorValue` instantiates the class without arguments
— so a document with a discriminated error hierarchy generated a client
that did not compile. The parameter is now optional and defaults to an
empty map in the initializer list.
- Dart: models whose names differ only in where a separator falls (e.g.
the inline property type `Process_error` and the component schema
`ProcessError`) snake-cased to the same file name, so one silently
overwrote the other and the client did not compile (`Undefined class
'Process_error'`). Colliding file names are now disambiguated, leaving
the generated type names unchanged. Same defect as the one fixed for
Ruby, part of [#​7821](https://github.com/microsoft/kiota/issues/7821).

- Name correction now walks the code model in a fixed order. Where two
names correct to the same value only the element reached first can take
it, and the walk followed a dictionary whose order varies between runs,
so the winner, and with it the generated output, differed from one run
to the next. This removes one source of the non-reproducible generation
tracked in [#​7997](https://github.com/microsoft/kiota/issues/7997);
other sources remain, so the descriptions suppressed for it stay
suppressed.

- Ruby: a model sharing its name with a sibling namespace had the
disambiguation suffix applied once per reference to it rather than once,
so generation failed with `The element to rename was not found
available_phone_number_countryModelModelModelModel`. The reference pass
was removed: `CodeType.Name` already delegates to the type definition,
so references follow the rename on their own. Un-suppresses the Twilio
integration and idempotency tests.
[kiota-abstractions-ruby#​66](https://github.com/microsoft/kiota-abstractions-ruby/issues/66)
- C#: create property "EqualsEscaped" instead of "Equals" for model
properties "equals" to avoid a compiler warning
[#​8133](https://github.com/microsoft/kiota/issues/8133)
- A HEAD operation with no response schema generated an executor
returning a `Stream`. The default return type was picked from the
response codes alone, so a HEAD declaring only a `200` fell through to
binary, while one that happened to list `304` returned void by accident.
The request method is now checked first, so a HEAD that falls through to
the default returns void.
[#​4245](https://github.com/microsoft/kiota/issues/4245)


Commits viewable in [compare
view](https://github.com/microsoft/kiota/compare/v1.34.1...v1.35.0).
</details>

Updated
[Microsoft.Testing.Extensions.CodeCoverage](https://github.com/microsoft/codecoverage)
from 18.10.0 to 18.11.2.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Testing.Extensions.CodeCoverage's
releases](https://github.com/microsoft/codecoverage/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/microsoft/codecoverage/commits).
</details>

Updated [Moq](https://github.com/moq/moq) from 4.20.72 to 4.21.0.

<details>
<summary>Release notes</summary>

_Sourced from [Moq's releases](https://github.com/moq/moq/releases)._

## 4.21.0

<!-- Release notes generated using configuration in .github/release.yml
at main -->

## What's Changed
### ✨ Implemented enhancements
* Improve performance of It.Is matcher when used with an expression by
compiling only once by @​peterder72 in
https://github.com/devlooped/moq/pull/1512
* Updated ctor params to support nullable args by @​Asafima in
https://github.com/devlooped/moq/pull/1518
* Performance improvement for Mocking many large classes by @​crinksdr
in https://github.com/devlooped/moq/pull/1530
### 🐛 Fixed bugs
* Minor enhancement to avoid null exceptions by @​ShirAvneri in
https://github.com/devlooped/moq/pull/1542
* Fix #​1648 reliably (lazy ValueTask registration + committed harness
verification) by @​kzu in https://github.com/devlooped/moq/pull/1680
### 🔨 Other
* Updated IVerifies.Verifiable method documentation code example by
@​Asafima in https://github.com/devlooped/moq/pull/1528
* Bump dependencies by @​kzu in
https://github.com/devlooped/moq/pull/1545
* Address build warnings by @​kzu in
https://github.com/devlooped/moq/pull/1546
* Enable nullable references in Moq.csproj by @​andrewimcclement in
https://github.com/devlooped/moq/pull/1535
* Bump NuGetizer to 1.4.9 by @​kzu with @​Copilot in
https://github.com/devlooped/moq/pull/1684

## New Contributors
* @​peterder72 made their first contribution in
https://github.com/devlooped/moq/pull/1512
* @​Asafima made their first contribution in
https://github.com/devlooped/moq/pull/1518
* @​crinksdr made their first contribution in
https://github.com/devlooped/moq/pull/1530
* @​ShirAvneri made their first contribution in
https://github.com/devlooped/moq/pull/1542
* @​andrewimcclement made their first contribution in
https://github.com/devlooped/moq/pull/1535
* @​kzu with @​Copilot made their first contribution in
https://github.com/devlooped/moq/pull/1684

**Full Changelog**:
https://github.com/devlooped/moq/compare/v4.20.72...v4.21.0

<!-- sponsors -->

<!-- avoid this section by leaving a nosponsors tag -->
## Sponsors

The following sponsors made this release possible: @​clarius,
@​MFB-Technologies-Inc, @​sandrock, @​drivenet, @​Keflon, @​tbolon,
@​rbnswartz, @​jfoshee, @​Mrxx99, @​eajhnsn1, @​Jonathan-Hickey,
@​KenBonny, @​SimonCropp, @​agileworks-eu, @​arsdragonfly, @​vezel-dev,
@​ChilliCream, @​4OTC, @​DominicSchell, @​adalon, @​torutek,
@​mccaffers, @​SeikaLogiciel, @​wizardness, @​eska-gmbh, @​geodata-no.

Thanks 💜

<!-- /sponsors -->



Commits viewable in [compare
view](https://github.com/moq/moq/compare/v4.20.72...v4.21.0).
</details>

Updated
[OpenTelemetry.Exporter.OpenTelemetryProtocol](https://github.com/open-telemetry/opentelemetry-dotnet)
from 1.18.0 to 1.19.1.

<details>
<summary>Release notes</summary>

_Sourced from [OpenTelemetry.Exporter.OpenTelemetryProtocol's
releases](https://github.com/open-telemetry/opentelemetry-dotnet/releases)._

## 1.19.1

For highlights and announcements pertaining to this release see:
[Release Notes >
1.19.1](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md#​1191).

The following changes are from the previous release
[1.19.0](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/core-1.19.0).

* NuGet: [OpenTelemetry
v1.19.1](https://www.nuget.org/packages/OpenTelemetry/1.19.1)

* Fixed `NotSupportedException` thrown when building a `TracerProvider`
or `MeterProvider` with a large number of wildcard source/meter patterns
on `net8.0`, and a related `OutOfMemoryException` that could occur when
many such providers were built over the lifetime of a process.

([#​7788](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7788))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Api/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Api/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api.ProviderBuilderExtensions
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Api.ProviderBuilderExtensions/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Api.ProviderBuilderExtensions/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Console
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Console/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Exporter.Console/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.InMemory
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.InMemory/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Exporter.InMemory/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.OpenTelemetryProtocol
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.OpenTelemetryProtocol/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Zipkin
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Zipkin/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Exporter.Zipkin/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Extensions.Hosting
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Extensions.Hosting/1.19.1)

  No notable changes.
 ... (truncated)

## 1.19.1-rc.1

The following changes are from the previous release
[1.19.0](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/core-1.19.0).

* NuGet: [OpenTelemetry
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry/1.19.1-rc.1)

* Fixed `NotSupportedException` thrown when building a `TracerProvider`
or `MeterProvider` with a large number of wildcard source/meter patterns
on `net8.0`, and a related `OutOfMemoryException` that could occur when
many such providers were built over the lifetime of a process.

([#​7788](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7788))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Api/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Api/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api.ProviderBuilderExtensions
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Api.ProviderBuilderExtensions/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Api.ProviderBuilderExtensions/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Console
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Console/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Exporter.Console/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.InMemory
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.InMemory/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Exporter.InMemory/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.OpenTelemetryProtocol
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.OpenTelemetryProtocol/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Zipkin
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Zipkin/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Exporter.Zipkin/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Extensions.Hosting
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Extensions.Hosting/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Extensions.Hosting/CHANGELOG.md)
for details.
 ... (truncated)

## 1.19.1-beta.1

The following changes are from the previous release
[1.19.0-beta.1](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/coreunstable-1.19.0-beta.1).

* NuGet: [OpenTelemetry.Exporter.Prometheus.AspNetCore
v1.19.1-beta.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Prometheus.AspNetCore/1.19.1-beta.1)

  * Updated OpenTelemetry core component version(s) to `1.19.1`.

([#​7796](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7796))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.1-beta.1/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Prometheus.HttpListener
v1.19.1-beta.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Prometheus.HttpListener/1.19.1-beta.1)

  * Updated OpenTelemetry core component version(s) to `1.19.1`.

([#​7796](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7796))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.1-beta.1/src/OpenTelemetry.Exporter.Prometheus.HttpListener/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Shims.OpenTracing
v1.19.1-beta.1](https://www.nuget.org/packages/OpenTelemetry.Shims.OpenTracing/1.19.1-beta.1)

  * Updated OpenTelemetry core component version(s) to `1.19.1`.

([#​7796](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7796))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.1-beta.1/src/OpenTelemetry.Shims.OpenTracing/CHANGELOG.md)
for details.



## 1.19.0

For highlights and announcements pertaining to this release see:
[Release Notes >
1.19.0](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md#​1190).

The following changes are from the previous release
[1.18.0](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/core-1.18.0).

* NuGet: [OpenTelemetry
v1.19.0](https://www.nuget.org/packages/OpenTelemetry/1.19.0)

  * Added Schema URL to internally created `Resource` instances.

([#​7726](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7726))
  
* Reduced allocations when formatting self-diagnostics events with up to
three parameters.

([#​7730](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7730))
  
  * Added `AlwaysRecordSampler`.

([#​7695](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7695))
  
* Fixed `CircularBufferBuckets` so the first delta histogram insertion
after a reset does not result in an unnecessary scale reduction.

([#​7749](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7749))
  
* Improved wildcard source/meter name matching to avoid excessive
matching time at runtime.

([#​7760](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7760))
  
* Fixed lazy logger provider builds after a failure from reusing
partially initialized provider state.

([#​7761](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7761))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0/src/OpenTelemetry/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api
v1.19.0](https://www.nuget.org/packages/OpenTelemetry.Api/1.19.0)

* Reduced allocations when creating log record attributes from an array.

([#​7699](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7699))
  
* Reduced allocations when setting baggage through the `params`
overload.

([#​7697](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7697))
  
* Reduced allocations when constructing `SpanAttributes` from an array.

([#​7698](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7698))
  
* Fixed parsing of an inbound `tracestate` header whose member value
trimmed to an empty value that previously threw an
`IndexOutOfRangeException` internally and could silently truncate the
tracestate.

([#​7756](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7756))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0/src/OpenTelemetry.Api/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api.ProviderBuilderExtensions
v1.19.0](https://www.nuget.org/packages/OpenTelemetry.Api.ProviderBuilderExtensions/1.19.0)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0/src/OpenTelemetry.Api.ProviderBuilderExtensions/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Console
v1.19.0](https://www.nuget.org/packages/OpenTelemetry.Exporter.Console/1.19.0)

 ... (truncated)

## 1.19.0-rc.1

The following changes are from the previous release
[1.18.0](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/core-1.18.0).

* NuGet: [OpenTelemetry
v1.19.0-rc.1](https://www.nuget.org/packages/OpenTelemetry/1.19.0-rc.1)

  * Added Schema URL to internally created `Resource` instances.

([#​7726](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7726))
  
* Reduced allocations when formatting self-diagnostics events with up to
three parameters.

([#​7730](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7730))
  
  * Added `AlwaysRecordSampler`.

([#​7695](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7695))
  
* Fixed `CircularBufferBuckets` so the first delta histogram insertion
after a reset does not result in an unnecessary scale reduction.

([#​7749](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7749))
  
* Improved wildcard source/meter name matching to avoid excessive
matching time at runtime.

([#​7760](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7760))
  
* Fixed lazy logger provider builds after a failure from reusing
partially initialized provider state.

([#​7761](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7761))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0-rc.1/src/OpenTelemetry/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api
v1.19.0-rc.1](https://www.nuget.org/packages/OpenTelemetry.Api/1.19.0-rc.1)

* Reduced allocations when creating log record attributes from an array.

([#​7699](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7699))
  
* Reduced allocations when setting baggage through the `params`
overload.

([#​7697](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7697))
  
* Reduced allocations when constructing `SpanAttributes` from an array.

([#​7698](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7698))
  
* Fixed parsing of an inbound `tracestate` header whose member value
trimmed to an empty value that previously threw an
`IndexOutOfRangeException` internally and could silently truncate the
tracestate.

([#​7756](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7756))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0-rc.1/src/OpenTelemetry.Api/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api.ProviderBuilderExtensions
v1.19.0-rc.1](https://www.nuget.org/packages/OpenTelemetry.Api.ProviderBuilderExtensions/1.19.0-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0-rc.1/src/OpenTelemetry.Api.ProviderBuilderExtensions/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Console
v1.19.0-rc.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Console/1.19.0-rc.1)

* Extended key/value list attribute handling to cover additional
dictionary shapes (`IEnumerable<KeyValuePair<string, string?>>` and
`IDictionary`). These attributes will be serialized as JSON objects.

([#​7679](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7679))
 ... (truncated)

## 1.19.0-beta.1

The following changes are from the previous release
[1.18.0-beta.1](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/coreunstable-1.18.0-beta.1).

* NuGet: [OpenTelemetry.Exporter.Prometheus.AspNetCore
v1.19.0-beta.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Prometheus.AspNetCore/1.19.0-beta.1)

* **Breaking Change** The `PrometheusTranslationStrategy` enum was
renamed to `PrometheusAspNetCoreTranslationStrategy`.

([#​7751](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7751))
  
* Fixed OpenMetrics `_created` series being emitted for metric points
with a default start time.

([#​7754](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7754))
  
* Prometheus text/OpenMetrics escaping of label values, label names and
help text is now more efficient.

([#​7758](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7758))
  
* A scrape request whose connection is aborted, or whose
`X-Prometheus-Scrape-Timeout-Seconds` deadline elapses, now stops
waiting for an in-progress metrics collection instead of continuing to
wait for it to finish. The collection itself is not cancelled and
continues running in the background.

([#​7757](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7757))
  
  * Updated OpenTelemetry core component version(s) to `1.19.0`.

([#​7785](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7785))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.0-beta.1/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Prometheus.HttpListener
v1.19.0-beta.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Prometheus.HttpListener/1.19.0-beta.1)

* **Breaking Change** The `PrometheusTranslationStrategy` enum was
renamed to `PrometheusHttpListenerTranslationStrategy`.

([#​7751](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7751))
  
* Fixed OpenMetrics `_created` series being emitted for metric points
with a default start time.

([#​7754](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7754))
  
* Prometheus text/OpenMetrics escaping of label values, label names and
help text is now more efficient.

([#​7758](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7758))
  
* Added
`PrometheusHttpListenerOptions.ScrapeResponseTimeoutMilliseconds`
(default `60000`) which bounds how long a scrape request waits for its
response. `X-Prometheus-Scrape-Timeout-Seconds` request header values
may only shorten this limit. The limit bounds the request's wait only: a
metrics collection already running when it is reached is not cancelled
and continues running in the background.

([#​7757](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7757))
  
  * Updated OpenTelemetry core component version(s) to `1.19.0`.

([#​7785](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7785))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.0-beta.1/src/OpenTelemetry.Exporter.Prometheus.HttpListener/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Shims.OpenTracing
v1.19.0-beta.1](https://www.nuget.org/packages/OpenTelemetry.Shims.OpenTracing/1.19.0-beta.1)

  * Updated OpenTelemetry core component version(s) to `1.19.0`.

([#​7785](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7785))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.0-beta.1/src/OpenTelemetry.Shims.OpenTracing/CHANGELOG.md)
for details.


Commits viewable in [compare
view](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.18.0...core-1.19.1).
</details>

Updated
[OpenTelemetry.Extensions.Hosting](https://github.com/open-telemetry/opentelemetry-dotnet)
from 1.18.0 to 1.19.1.

<details>
<summary>Release notes</summary>

_Sourced from [OpenTelemetry.Extensions.Hosting's
releases](https://github.com/open-telemetry/opentelemetry-dotnet/releases)._

## 1.19.1

For highlights and announcements pertaining to this release see:
[Release Notes >
1.19.1](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md#​1191).

The following changes are from the previous release
[1.19.0](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/core-1.19.0).

* NuGet: [OpenTelemetry
v1.19.1](https://www.nuget.org/packages/OpenTelemetry/1.19.1)

* Fixed `NotSupportedException` thrown when building a `TracerProvider`
or `MeterProvider` with a large number of wildcard source/meter patterns
on `net8.0`, and a related `OutOfMemoryException` that could occur when
many such providers were built over the lifetime of a process.

([#​7788](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7788))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Api/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Api/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api.ProviderBuilderExtensions
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Api.ProviderBuilderExtensions/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Api.ProviderBuilderExtensions/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Console
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Console/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Exporter.Console/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.InMemory
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.InMemory/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Exporter.InMemory/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.OpenTelemetryProtocol
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.OpenTelemetryProtocol/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Zipkin
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Zipkin/1.19.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1/src/OpenTelemetry.Exporter.Zipkin/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Extensions.Hosting
v1.19.1](https://www.nuget.org/packages/OpenTelemetry.Extensions.Hosting/1.19.1)

  No notable changes.
 ... (truncated)

## 1.19.1-rc.1

The following changes are from the previous release
[1.19.0](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/core-1.19.0).

* NuGet: [OpenTelemetry
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry/1.19.1-rc.1)

* Fixed `NotSupportedException` thrown when building a `TracerProvider`
or `MeterProvider` with a large number of wildcard source/meter patterns
on `net8.0`, and a related `OutOfMemoryException` that could occur when
many such providers were built over the lifetime of a process.

([#​7788](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7788))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Api/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Api/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api.ProviderBuilderExtensions
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Api.ProviderBuilderExtensions/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Api.ProviderBuilderExtensions/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Console
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Console/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Exporter.Console/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.InMemory
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.InMemory/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Exporter.InMemory/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.OpenTelemetryProtocol
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.OpenTelemetryProtocol/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Exporter.OpenTelemetryProtocol/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Zipkin
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Zipkin/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Exporter.Zipkin/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Extensions.Hosting
v1.19.1-rc.1](https://www.nuget.org/packages/OpenTelemetry.Extensions.Hosting/1.19.1-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.1-rc.1/src/OpenTelemetry.Extensions.Hosting/CHANGELOG.md)
for details.
 ... (truncated)

## 1.19.1-beta.1

The following changes are from the previous release
[1.19.0-beta.1](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/coreunstable-1.19.0-beta.1).

* NuGet: [OpenTelemetry.Exporter.Prometheus.AspNetCore
v1.19.1-beta.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Prometheus.AspNetCore/1.19.1-beta.1)

  * Updated OpenTelemetry core component version(s) to `1.19.1`.

([#​7796](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7796))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.1-beta.1/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Prometheus.HttpListener
v1.19.1-beta.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Prometheus.HttpListener/1.19.1-beta.1)

  * Updated OpenTelemetry core component version(s) to `1.19.1`.

([#​7796](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7796))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.1-beta.1/src/OpenTelemetry.Exporter.Prometheus.HttpListener/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Shims.OpenTracing
v1.19.1-beta.1](https://www.nuget.org/packages/OpenTelemetry.Shims.OpenTracing/1.19.1-beta.1)

  * Updated OpenTelemetry core component version(s) to `1.19.1`.

([#​7796](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7796))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.1-beta.1/src/OpenTelemetry.Shims.OpenTracing/CHANGELOG.md)
for details.



## 1.19.0

For highlights and announcements pertaining to this release see:
[Release Notes >
1.19.0](https://github.com/open-telemetry/opentelemetry-dotnet/blob/main/RELEASENOTES.md#​1190).

The following changes are from the previous release
[1.18.0](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/core-1.18.0).

* NuGet: [OpenTelemetry
v1.19.0](https://www.nuget.org/packages/OpenTelemetry/1.19.0)

  * Added Schema URL to internally created `Resource` instances.

([#​7726](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7726))
  
* Reduced allocations when formatting self-diagnostics events with up to
three parameters.

([#​7730](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7730))
  
  * Added `AlwaysRecordSampler`.

([#​7695](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7695))
  
* Fixed `CircularBufferBuckets` so the first delta histogram insertion
after a reset does not result in an unnecessary scale reduction.

([#​7749](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7749))
  
* Improved wildcard source/meter name matching to avoid excessive
matching time at runtime.

([#​7760](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7760))
  
* Fixed lazy logger provider builds after a failure from reusing
partially initialized provider state.

([#​7761](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7761))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0/src/OpenTelemetry/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api
v1.19.0](https://www.nuget.org/packages/OpenTelemetry.Api/1.19.0)

* Reduced allocations when creating log record attributes from an array.

([#​7699](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7699))
  
* Reduced allocations when setting baggage through the `params`
overload.

([#​7697](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7697))
  
* Reduced allocations when constructing `SpanAttributes` from an array.

([#​7698](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7698))
  
* Fixed parsing of an inbound `tracestate` header whose member value
trimmed to an empty value that previously threw an
`IndexOutOfRangeException` internally and could silently truncate the
tracestate.

([#​7756](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7756))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0/src/OpenTelemetry.Api/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api.ProviderBuilderExtensions
v1.19.0](https://www.nuget.org/packages/OpenTelemetry.Api.ProviderBuilderExtensions/1.19.0)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0/src/OpenTelemetry.Api.ProviderBuilderExtensions/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Console
v1.19.0](https://www.nuget.org/packages/OpenTelemetry.Exporter.Console/1.19.0)

 ... (truncated)

## 1.19.0-rc.1

The following changes are from the previous release
[1.18.0](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/core-1.18.0).

* NuGet: [OpenTelemetry
v1.19.0-rc.1](https://www.nuget.org/packages/OpenTelemetry/1.19.0-rc.1)

  * Added Schema URL to internally created `Resource` instances.

([#​7726](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7726))
  
* Reduced allocations when formatting self-diagnostics events with up to
three parameters.

([#​7730](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7730))
  
  * Added `AlwaysRecordSampler`.

([#​7695](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7695))
  
* Fixed `CircularBufferBuckets` so the first delta histogram insertion
after a reset does not result in an unnecessary scale reduction.

([#​7749](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7749))
  
* Improved wildcard source/meter name matching to avoid excessive
matching time at runtime.

([#​7760](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7760))
  
* Fixed lazy logger provider builds after a failure from reusing
partially initialized provider state.

([#​7761](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7761))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0-rc.1/src/OpenTelemetry/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api
v1.19.0-rc.1](https://www.nuget.org/packages/OpenTelemetry.Api/1.19.0-rc.1)

* Reduced allocations when creating log record attributes from an array.

([#​7699](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7699))
  
* Reduced allocations when setting baggage through the `params`
overload.

([#​7697](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7697))
  
* Reduced allocations when constructing `SpanAttributes` from an array.

([#​7698](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7698))
  
* Fixed parsing of an inbound `tracestate` header whose member value
trimmed to an empty value that previously threw an
`IndexOutOfRangeException` internally and could silently truncate the
tracestate.

([#​7756](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7756))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0-rc.1/src/OpenTelemetry.Api/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Api.ProviderBuilderExtensions
v1.19.0-rc.1](https://www.nuget.org/packages/OpenTelemetry.Api.ProviderBuilderExtensions/1.19.0-rc.1)

  No notable changes.

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/core-1.19.0-rc.1/src/OpenTelemetry.Api.ProviderBuilderExtensions/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Console
v1.19.0-rc.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Console/1.19.0-rc.1)

* Extended key/value list attribute handling to cover additional
dictionary shapes (`IEnumerable<KeyValuePair<string, string?>>` and
`IDictionary`). These attributes will be serialized as JSON objects.

([#​7679](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7679))
 ... (truncated)

## 1.19.0-beta.1

The following changes are from the previous release
[1.18.0-beta.1](https://github.com/open-telemetry/opentelemetry-dotnet/releases/tag/coreunstable-1.18.0-beta.1).

* NuGet: [OpenTelemetry.Exporter.Prometheus.AspNetCore
v1.19.0-beta.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Prometheus.AspNetCore/1.19.0-beta.1)

* **Breaking Change** The `PrometheusTranslationStrategy` enum was
renamed to `PrometheusAspNetCoreTranslationStrategy`.

([#​7751](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7751))
  
* Fixed OpenMetrics `_created` series being emitted for metric points
with a default start time.

([#​7754](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7754))
  
* Prometheus text/OpenMetrics escaping of label values, label names and
help text is now more efficient.

([#​7758](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7758))
  
* A scrape request whose connection is aborted, or whose
`X-Prometheus-Scrape-Timeout-Seconds` deadline elapses, now stops
waiting for an in-progress metrics collection instead of continuing to
wait for it to finish. The collection itself is not cancelled and
continues running in the background.

([#​7757](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7757))
  
  * Updated OpenTelemetry core component version(s) to `1.19.0`.

([#​7785](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7785))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.0-beta.1/src/OpenTelemetry.Exporter.Prometheus.AspNetCore/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Exporter.Prometheus.HttpListener
v1.19.0-beta.1](https://www.nuget.org/packages/OpenTelemetry.Exporter.Prometheus.HttpListener/1.19.0-beta.1)

* **Breaking Change** The `PrometheusTranslationStrategy` enum was
renamed to `PrometheusHttpListenerTranslationStrategy`.

([#​7751](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7751))
  
* Fixed OpenMetrics `_created` series being emitted for metric points
with a default start time.

([#​7754](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7754))
  
* Prometheus text/OpenMetrics escaping of label values, label names and
help text is now more efficient.

([#​7758](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7758))
  
* Added
`PrometheusHttpListenerOptions.ScrapeResponseTimeoutMilliseconds`
(default `60000`) which bounds how long a scrape request waits for its
response. `X-Prometheus-Scrape-Timeout-Seconds` request header values
may only shorten this limit. The limit bounds the request's wait only: a
metrics collection already running when it is reached is not cancelled
and continues running in the background.

([#​7757](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7757))
  
  * Updated OpenTelemetry core component version(s) to `1.19.0`.

([#​7785](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7785))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.0-beta.1/src/OpenTelemetry.Exporter.Prometheus.HttpListener/CHANGELOG.md)
for details.

* NuGet: [OpenTelemetry.Shims.OpenTracing
v1.19.0-beta.1](https://www.nuget.org/packages/OpenTelemetry.Shims.OpenTracing/1.19.0-beta.1)

  * Updated OpenTelemetry core component version(s) to `1.19.0`.

([#​7785](https://github.com/open-telemetry/opentelemetry-dotnet/pull/7785))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet/blob/coreunstable-1.19.0-beta.1/src/OpenTelemetry.Shims.OpenTracing/CHANGELOG.md)
for details.


Commits viewable in [compare
view](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.18.0...core-1.19.1).
</details>

Updated
[OpenTelemetry.Instrumentation.AspNetCore](https://github.com/open-telemetry/opentelemetry-dotnet-contrib)
from 1.18.0 to 1.19.0.

<details>
<summary>Release notes</summary>

_Sourced from [OpenTelemetry.Instrumentation.AspNetCore's
releases](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/releases)._

## 1.19.0

* NuGet: [OpenTelemetry.Exporter.OneCollector
v1.19.0](https://www.nuget.org/packages/OpenTelemetry.Exporter.OneCollector/1.19.0)

  * Updated OpenTelemetry core component version(s) to `1.19.0`.

([#​5240](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/pull/5240))

See
[CHANGELOG](https://github.com/open-telemetry/opentelemetry-dotnet…
Steinar Hjellvik (shjellvik) added a commit to equinor/osdu-csharp-client that referenced this pull request Oct 30, 2026
Updated
[Microsoft.Extensions.Configuration](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.13.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Configuration's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Configuration.Abstractions](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.13.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Configuration.Abstractions's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Configuration.Binder](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.13.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Configuration.Binder's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Configuration.EnvironmentVariables](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.13.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Configuration.EnvironmentVariables's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Configuration.Json](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.13.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Configuration.Json's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Configuration.UserSecrets](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.13.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Configuration.UserSecrets's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Extensions.Logging.Abstractions](https://github.com/dotnet/dotnet)
from 10.0.11 to 10.0.13.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Extensions.Logging.Abstractions's
releases](https://github.com/dotnet/dotnet/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/dotnet/dotnet/commits).
</details>

Updated
[Microsoft.Identity.Client](https://github.com/AzureAD/microsoft-authentication-library-for-dotnet)
from 4.88.0 to 4.91.0.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Identity.Client's
releases](https://github.com/AzureAD/microsoft-authentication-library-for-dotnet/releases)._

## 4.91.0

### New Features

- Made the dynamic certificate provider and confidential-client
callbacks (`OnMsalServiceFailure`, `OnCompletion`, and
`OnBackgroundTokenRefreshCompleted`) generally available, removing the
experimental feature opt-in requirement.
[#​6216](AzureAD/microsoft-authentication-library-for-dotnet#6216)

### Bug Fixes

- Fixed built-in mTLS `HttpClient` caching to use certificate object
identity, ensuring a new certificate instance with a reacquired
private-key handle receives a new handler even when its thumbprint is
unchanged.
[#​6217](AzureAD/microsoft-authentication-library-for-dotnet#6217)
- Fixed managed identity `WithForceRefresh(true)` to re-mint the MSI v2
binding certificate before acquiring a new token, while reusing a valid
cached attestation token for the current key.
[#​6215](AzureAD/microsoft-authentication-library-for-dotnet#6215)
- Fixed system-browser authentication callbacks in Linux containers by
adding opt-in IPv4 port-forwarding support through
`MSAL_ALLOW_SYSTEM_BROWSER_PORT_FORWARDING`, disabled by default.
[#​6186](AzureAD/microsoft-authentication-library-for-dotnet#6186)

## 4.90.1

### New Features
- Added `IMsalWsTrustHttpClientFactory`, allowing custom HTTP client
factories to provide redirect-disabled, credential-policy-aware clients
for federation metadata (MEX) and WS-Trust requests. Added
`MsalError.TooManyRedirects` and
`MsalError.WsTrustCrossOriginRedirectNotSupported` for redirect
failures.
[#​6165](AzureAD/microsoft-authentication-library-for-dotnet#6165)

### Bug Fixes
- Hardened federation metadata and WS-Trust requests by requiring HTTPS,
securely validating redirects, rejecting credential-bearing cross-origin
redirects, and limiting redirect chains.
[#​6165](AzureAD/microsoft-authentication-library-for-dotnet#6165)
- Fixed instance discovery so a custom authority port is not forwarded
to the global discovery host, while preserving the port when discovery
uses the authority host.
[#​6155](AzureAD/microsoft-authentication-library-for-dotnet#6155)
- Fixed KeyGuard attestation to send the tenant ID as the MAA
`client_id` metadata value without changing managed-identity client-ID
handling or attestation-cache partitioning.
[#​6200](AzureAD/microsoft-authentication-library-for-dotnet#6200)

### Changes
- Updated `Microsoft.Azure.Security.KeyGuardAttestation` from version
1.1.7 to 1.1.8.
[#​6202](AzureAD/microsoft-authentication-library-for-dotnet#6202)


## 4.90.0

### Changes
- Updated the KeyGuardAttestation package version to 1.1.7.
[#​6189](AzureAD/microsoft-authentication-library-for-dotnet#6189)

## 4.89.0

## What's Changed
* Add repository guidance for AI agents by @​bgavrilMS in
AzureAD/microsoft-authentication-library-for-dotnet#6158
* Add Linux Attested Managed Identity Flow documentation by @​gladjohn
in
AzureAD/microsoft-authentication-library-for-dotnet#6149
* Remove internal authority example from API docs by @​bgavrilMS in
AzureAD/microsoft-authentication-library-for-dotnet#6170
* Update SNI MTLS PoP Token Design documentation by @​bgavrilMS in
AzureAD/microsoft-authentication-library-for-dotnet#6171
* Add SNI mTLS E2E coverage for a non-exportable VBS-protected
certificate by @​gladjohn in
AzureAD/microsoft-authentication-library-for-dotnet#6167
* Revise mTLS PoP acceptance-test matrix structure by @​gladjohn in
AzureAD/microsoft-authentication-library-for-dotnet#6161
* Add ICloudConfiguration for cross-cloud metadata resolution by
@​Avery-Dunn in
AzureAD/microsoft-authentication-library-for-dotnet#6104
* Fix IMDSv2 SCHANNEL failures bypassing certificate re-mint retry by
@​Robbie-Microsoft in
AzureAD/microsoft-authentication-library-for-dotnet#6173
* Always record RawStsErrorCode on MsalFailure metric by @​ssmelov in
AzureAD/microsoft-authentication-library-for-dotnet#6175
* Add MSAL_MI_DISABLE_IMDS_V2 kill switch for managed identity by
@​Robbie-Microsoft in
AzureAD/microsoft-authentication-library-for-dotnet#6178
* Add timeout for managed identity capability discovery by
@​Robbie-Microsoft in
AzureAD/microsoft-authentication-library-for-dotnet#6181
* Pin GitHub Actions to full-length commit SHAs by @​danfiedler-msft in
AzureAD/microsoft-authentication-library-for-dotnet#6182

## New Contributors
* @​danfiedler-msft made their first contribution in
AzureAD/microsoft-authentication-library-for-dotnet#6182

**Full Changelog**:
AzureAD/microsoft-authentication-library-for-dotnet@4.88.0...4.89.0

Commits viewable in [compare
view](AzureAD/microsoft-authentication-library-for-dotnet@4.88.0...4.91.0).
</details>

Updated
[Microsoft.Identity.Client.Extensions.Msal](https://github.com/AzureAD/microsoft-authentication-library-for-dotnet)
from 4.88.0 to 4.91.0.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Identity.Client.Extensions.Msal's
releases](https://github.com/AzureAD/microsoft-authentication-library-for-dotnet/releases)._

## 4.91.0

### New Features

- Made the dynamic certificate provider and confidential-client
callbacks (`OnMsalServiceFailure`, `OnCompletion`, and
`OnBackgroundTokenRefreshCompleted`) generally available, removing the
experimental feature opt-in requirement.
[#​6216](AzureAD/microsoft-authentication-library-for-dotnet#6216)

### Bug Fixes

- Fixed built-in mTLS `HttpClient` caching to use certificate object
identity, ensuring a new certificate instance with a reacquired
private-key handle receives a new handler even when its thumbprint is
unchanged.
[#​6217](AzureAD/microsoft-authentication-library-for-dotnet#6217)
- Fixed managed identity `WithForceRefresh(true)` to re-mint the MSI v2
binding certificate before acquiring a new token, while reusing a valid
cached attestation token for the current key.
[#​6215](AzureAD/microsoft-authentication-library-for-dotnet#6215)
- Fixed system-browser authentication callbacks in Linux containers by
adding opt-in IPv4 port-forwarding support through
`MSAL_ALLOW_SYSTEM_BROWSER_PORT_FORWARDING`, disabled by default.
[#​6186](AzureAD/microsoft-authentication-library-for-dotnet#6186)

## 4.90.1

### New Features
- Added `IMsalWsTrustHttpClientFactory`, allowing custom HTTP client
factories to provide redirect-disabled, credential-policy-aware clients
for federation metadata (MEX) and WS-Trust requests. Added
`MsalError.TooManyRedirects` and
`MsalError.WsTrustCrossOriginRedirectNotSupported` for redirect
failures.
[#​6165](AzureAD/microsoft-authentication-library-for-dotnet#6165)

### Bug Fixes
- Hardened federation metadata and WS-Trust requests by requiring HTTPS,
securely validating redirects, rejecting credential-bearing cross-origin
redirects, and limiting redirect chains.
[#​6165](AzureAD/microsoft-authentication-library-for-dotnet#6165)
- Fixed instance discovery so a custom authority port is not forwarded
to the global discovery host, while preserving the port when discovery
uses the authority host.
[#​6155](AzureAD/microsoft-authentication-library-for-dotnet#6155)
- Fixed KeyGuard attestation to send the tenant ID as the MAA
`client_id` metadata value without changing managed-identity client-ID
handling or attestation-cache partitioning.
[#​6200](AzureAD/microsoft-authentication-library-for-dotnet#6200)

### Changes
- Updated `Microsoft.Azure.Security.KeyGuardAttestation` from version
1.1.7 to 1.1.8.
[#​6202](AzureAD/microsoft-authentication-library-for-dotnet#6202)


## 4.90.0

### Changes
- Updated the KeyGuardAttestation package version to 1.1.7.
[#​6189](AzureAD/microsoft-authentication-library-for-dotnet#6189)

## 4.89.0

## What's Changed
* Add repository guidance for AI agents by @​bgavrilMS in
AzureAD/microsoft-authentication-library-for-dotnet#6158
* Add Linux Attested Managed Identity Flow documentation by @​gladjohn
in
AzureAD/microsoft-authentication-library-for-dotnet#6149
* Remove internal authority example from API docs by @​bgavrilMS in
AzureAD/microsoft-authentication-library-for-dotnet#6170
* Update SNI MTLS PoP Token Design documentation by @​bgavrilMS in
AzureAD/microsoft-authentication-library-for-dotnet#6171
* Add SNI mTLS E2E coverage for a non-exportable VBS-protected
certificate by @​gladjohn in
AzureAD/microsoft-authentication-library-for-dotnet#6167
* Revise mTLS PoP acceptance-test matrix structure by @​gladjohn in
AzureAD/microsoft-authentication-library-for-dotnet#6161
* Add ICloudConfiguration for cross-cloud metadata resolution by
@​Avery-Dunn in
AzureAD/microsoft-authentication-library-for-dotnet#6104
* Fix IMDSv2 SCHANNEL failures bypassing certificate re-mint retry by
@​Robbie-Microsoft in
AzureAD/microsoft-authentication-library-for-dotnet#6173
* Always record RawStsErrorCode on MsalFailure metric by @​ssmelov in
AzureAD/microsoft-authentication-library-for-dotnet#6175
* Add MSAL_MI_DISABLE_IMDS_V2 kill switch for managed identity by
@​Robbie-Microsoft in
AzureAD/microsoft-authentication-library-for-dotnet#6178
* Add timeout for managed identity capability discovery by
@​Robbie-Microsoft in
AzureAD/microsoft-authentication-library-for-dotnet#6181
* Pin GitHub Actions to full-length commit SHAs by @​danfiedler-msft in
AzureAD/microsoft-authentication-library-for-dotnet#6182

## New Contributors
* @​danfiedler-msft made their first contribution in
AzureAD/microsoft-authentication-library-for-dotnet#6182

**Full Changelog**:
AzureAD/microsoft-authentication-library-for-dotnet@4.88.0...4.89.0

Commits viewable in [compare
view](AzureAD/microsoft-authentication-library-for-dotnet@4.88.0...4.91.0).
</details>

Updated
[Microsoft.Kiota.Abstractions](https://github.com/microsoft/kiota-dotnet)
from 2.1.1 to 2.1.2.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Kiota.Abstractions's
releases](https://github.com/microsoft/kiota-dotnet/releases)._

## 2.1.2

##
[2.1.2](microsoft/kiota-dotnet@v2.1.1...v2.1.2)
(2026-09-08)


### Bug Fixes

* **serialization-json:** honor custom TimeSpan converters
([#​795](microsoft/kiota-dotnet#795))
([e22c5ba](microsoft/kiota-dotnet@e22c5ba))
* **serialization-json:** honor DateTimeOffset converters
([802e20a](microsoft/kiota-dotnet@802e20a))
* **serialization-json:** honor guid converters before fallback parsing
([#​794](microsoft/kiota-dotnet#794))
([22cc1d3](microsoft/kiota-dotnet@22cc1d3))

Commits viewable in [compare
view](microsoft/kiota-dotnet@v2.1.1...v2.1.2).
</details>

Updated
[Microsoft.Kiota.Http.HttpClientLibrary](https://github.com/microsoft/kiota-dotnet)
from 2.1.1 to 2.1.2.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Kiota.Http.HttpClientLibrary's
releases](https://github.com/microsoft/kiota-dotnet/releases)._

## 2.1.2

##
[2.1.2](microsoft/kiota-dotnet@v2.1.1...v2.1.2)
(2026-09-08)


### Bug Fixes

* **serialization-json:** honor custom TimeSpan converters
([#​795](microsoft/kiota-dotnet#795))
([e22c5ba](microsoft/kiota-dotnet@e22c5ba))
* **serialization-json:** honor DateTimeOffset converters
([802e20a](microsoft/kiota-dotnet@802e20a))
* **serialization-json:** honor guid converters before fallback parsing
([#​794](microsoft/kiota-dotnet#794))
([22cc1d3](microsoft/kiota-dotnet@22cc1d3))

Commits viewable in [compare
view](microsoft/kiota-dotnet@v2.1.1...v2.1.2).
</details>

Updated
[Microsoft.Kiota.Serialization.Form](https://github.com/microsoft/kiota-dotnet)
from 2.1.1 to 2.1.2.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Kiota.Serialization.Form's
releases](https://github.com/microsoft/kiota-dotnet/releases)._

## 2.1.2

##
[2.1.2](microsoft/kiota-dotnet@v2.1.1...v2.1.2)
(2026-09-08)


### Bug Fixes

* **serialization-json:** honor custom TimeSpan converters
([#​795](microsoft/kiota-dotnet#795))
([e22c5ba](microsoft/kiota-dotnet@e22c5ba))
* **serialization-json:** honor DateTimeOffset converters
([802e20a](microsoft/kiota-dotnet@802e20a))
* **serialization-json:** honor guid converters before fallback parsing
([#​794](microsoft/kiota-dotnet#794))
([22cc1d3](microsoft/kiota-dotnet@22cc1d3))

Commits viewable in [compare
view](microsoft/kiota-dotnet@v2.1.1...v2.1.2).
</details>

Updated
[Microsoft.Kiota.Serialization.Json](https://github.com/microsoft/kiota-dotnet)
from 2.1.1 to 2.1.2.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Kiota.Serialization.Json's
releases](https://github.com/microsoft/kiota-dotnet/releases)._

## 2.1.2

##
[2.1.2](microsoft/kiota-dotnet@v2.1.1...v2.1.2)
(2026-09-08)


### Bug Fixes

* **serialization-json:** honor custom TimeSpan converters
([#​795](microsoft/kiota-dotnet#795))
([e22c5ba](microsoft/kiota-dotnet@e22c5ba))
* **serialization-json:** honor DateTimeOffset converters
([802e20a](microsoft/kiota-dotnet@802e20a))
* **serialization-json:** honor guid converters before fallback parsing
([#​794](microsoft/kiota-dotnet#794))
([22cc1d3](microsoft/kiota-dotnet@22cc1d3))

Commits viewable in [compare
view](microsoft/kiota-dotnet@v2.1.1...v2.1.2).
</details>

Updated
[Microsoft.Kiota.Serialization.Multipart](https://github.com/microsoft/kiota-dotnet)
from 2.1.1 to 2.1.2.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Kiota.Serialization.Multipart's
releases](https://github.com/microsoft/kiota-dotnet/releases)._

## 2.1.2

##
[2.1.2](microsoft/kiota-dotnet@v2.1.1...v2.1.2)
(2026-09-08)


### Bug Fixes

* **serialization-json:** honor custom TimeSpan converters
([#​795](microsoft/kiota-dotnet#795))
([e22c5ba](microsoft/kiota-dotnet@e22c5ba))
* **serialization-json:** honor DateTimeOffset converters
([802e20a](microsoft/kiota-dotnet@802e20a))
* **serialization-json:** honor guid converters before fallback parsing
([#​794](microsoft/kiota-dotnet#794))
([22cc1d3](microsoft/kiota-dotnet@22cc1d3))

Commits viewable in [compare
view](microsoft/kiota-dotnet@v2.1.1...v2.1.2).
</details>

Updated
[Microsoft.Kiota.Serialization.Text](https://github.com/microsoft/kiota-dotnet)
from 2.1.1 to 2.1.2.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.Kiota.Serialization.Text's
releases](https://github.com/microsoft/kiota-dotnet/releases)._

## 2.1.2

##
[2.1.2](microsoft/kiota-dotnet@v2.1.1...v2.1.2)
(2026-09-08)


### Bug Fixes

* **serialization-json:** honor custom TimeSpan converters
([#​795](microsoft/kiota-dotnet#795))
([e22c5ba](microsoft/kiota-dotnet@e22c5ba))
* **serialization-json:** honor DateTimeOffset converters
([802e20a](microsoft/kiota-dotnet@802e20a))
* **serialization-json:** honor guid converters before fallback parsing
([#​794](microsoft/kiota-dotnet#794))
([22cc1d3](microsoft/kiota-dotnet@22cc1d3))

Commits viewable in [compare
view](microsoft/kiota-dotnet@v2.1.1...v2.1.2).
</details>

Updated [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest)
from 18.9.0 to 18.11.0.

<details>
<summary>Release notes</summary>

_Sourced from [Microsoft.NET.Test.Sdk's
releases](https://github.com/microsoft/vstest/releases)._

## 18.11.0

<!-- Release notes generated using configuration in .github/release.yml
at rel/18.11 -->

## What's Changed
* Fix TRX logger mangling astral-plane (non-BMP) characters by
@​azat-msft in microsoft/vstest#16318
* Disable the MTP testhost by default by @​nohwnd in
microsoft/vstest#16337
* Fix OS-blind apphost probe in MTP bridge on Unix (regression from
#​16201) by @​azat-msft in
microsoft/vstest#16336
* Retarget the MTP client onto
Microsoft.Testing.Platform.ServerMode.Client.Sources by @​nohwnd in
microsoft/vstest#16300
* Pass arguments to PowerShell with -File instead of -command by
@​nohwnd in microsoft/vstest#16363
* Respect console logger verbosity from a settings file by @​nohwnd in
microsoft/vstest#16044
* Fix backslash normalization in VSTestCLIRunSettings on Unix by
@​nohwnd in microsoft/vstest#15795
* Docs: fix typo explicitely -> explicitly by @​vaibhav8a in
microsoft/vstest#16397
* Copy acceptance test diagnostic logs into the test results directory
by @​nohwnd in microsoft/vstest#16403

## New Contributors
* @​vaibhav8a made their first contribution in
microsoft/vstest#16397

**Full Changelog**:
microsoft/vstest@v18.10.1...v18.11.0

## 18.10.1


## What's Changed
* Isolate code coverage files in published output by @​azat-msft in
microsoft/vstest#16476


**Full Changelog**:
microsoft/vstest@v18.10.0...v18.10.1

## 18.10.0


## What's Changed
* Drop Mono fallback, run .NET Framework tests on Windows only by
@​nohwnd in microsoft/vstest#16158
* Run Microsoft.Testing.Platform test apps under `vstest.console` and
datacollector by @​nohwnd in
microsoft/vstest#16201
* Fix test output eaten by MSBuild terminal logger by @​nohwnd in
microsoft/vstest#16223
* Remove the experimental test session feature by @​nohwnd in
microsoft/vstest#16231
* Skip a single bad executor instead of failing all executor loading by
@​nohwnd in microsoft/vstest#16239
* Assert apartment state instead of using Clipboard in UI tests by
@​nohwnd in microsoft/vstest#16270
* Surface test host crashes during protocol negotiation by @​nohwnd in
microsoft/vstest#16285
* Pass the inferred target platform to the host in run settings by
@​nohwnd in microsoft/vstest#16271
* Report raw invalid IsTargetPlatformInferred value, cover host x64
forcing by @​nohwnd in microsoft/vstest#16295
* Disable the MTP testhost by default (#​16337) by @​nohwnd in
microsoft/vstest#16341


**Full Changelog**:
microsoft/vstest@v18.9.0...v18.10.0

Commits viewable in [compare
view](microsoft/vstest@v18.9.0...v18.11.0).
</details>

Updated [microsoft.openapi.kiota](https://github.com/microsoft/kiota)
from 1.35.0 to 1.36.1.

<details>
<summary>Release notes</summary>

_Sourced from [microsoft.openapi.kiota's
releases](https://github.com/microsoft/kiota/releases)._

## 1.36.1

## Added

### Changed

- Fixed small issues with release pipelines


## 1.36.0

## Added

- Ruby: an error's `message` returns the property the description marks
with `x-ms-primary-error-message`, as the other languages do. An error
property named `message` is renamed `message_escaped`, like
`MessageEscaped` in C#; when it is a string, `message` still returns it.
[kiota-ruby#​63](microsoft/kiota-ruby#63)

### Changed

- Fixed relative description paths when opening or selecting clients in
the VS Code Kiota workspace.
- Removed the retired lock-search command from the VS Code command
palette. Lock-file migration remains available.

- Preserve inherited properties when a single `oneOf` or `anyOf` member
defines its properties only through `allOf`. Fixes
[#​6778](microsoft/kiota#6778).
- Python: preserve false, zero, empty strings, and empty collections
when parsing and serializing union type wrappers.

- All language refiners accept a generation logger consistently,
retaining configuration-only compatibility constructors hidden from
IntelliSense.
- Reject plugin-manifest file references whose path components become
parent-directory traversal after Windows trims trailing spaces or dots.
- Fixed a stack overflow when generating API plugins from descriptions
with cyclic `allOf` schemas.
- Dart: omit unsupported schema defaults with a generation warning,
preserve supported literal and enum property and parameter defaults
(including empty strings), initialize query parameters from schema
defaults, and keep constructor initialization valid with or without
backing stores.
- Dart: preserve nullable optional request-builder constructor
parameters, including UUIDs and collections, so cloning accepts null
arguments without overwriting existing path parameters.
- Dart: escape URL templates once at final emission to preserve literal
dollar signs and backslashes in constructor defaults and method
overrides.
- Dart: preserve schema string defaults named `null`, including enum
wire values, without treating them as JSON-null sentinels.
- Dart: preserve query-parameter defaults inside single-member `allOf`
wrappers, retaining outer-default precedence and explicit JSON-null
defaults.
- Dart: validate parser-backed date, time, and UUID defaults before
emission, omitting unsupported values with a generation warning.
- Ruby: a union of object types that no discriminator decides, such as a
oneOf without a discriminator, now reads the payload into every object
member, as TypeScript does, instead of returning an empty wrapper. A
union whose discriminator matched no member does the same, and its array
member is only read when no other member was picked. Requires the
runtime gems at 0.24.0.
- Ruby: enum members hold their wire value, so a value such as
`incoming-payment` or `read` is sent and read as the description
declares it instead of as `IncomingPayment` or `Read`. `Enum[:Name]` now
returns the wire value as a string. Requires the runtime gems at 0.24.0.
- Go: keep escaped namespace segments lowercase so imports match
generated package directories on case-sensitive filesystems. Fixes
[#​7828](microsoft/kiota#7828).
- TypeScript: import response enum objects for request builders reached
through path parameters.
[#​6884](microsoft/kiota#6884)
- Resolve enum query parameters wrapped in single-member `allOf`
schemas, including enum array items.
- Go: cast scalar enum values in union factories and avoid reading an
empty discriminator name for undiscriminated unions. Addresses
[#​7808](microsoft/kiota#7808).
- Preserve models for multipart properties with default content types
when other properties specify an encoding.
[#​7342](microsoft/kiota#7342)
- Dart: escape enum options named value or values to avoid conflicts
with generated and built-in enum members.
[#​7807](microsoft/kiota#7807)
- Ruby: the client's root module has an `eager_load!` method that loads
every autoloaded model, for servers that preload before forking.
- Ruby: generated files start with `# frozen_string_literal: true`, so
string default values handed to user code are frozen.
- Ruby: generated string literals are double quoted, the StandardRB
convention.
- Ruby: namespaces with nothing to autoload no longer get an empty
barrel file, and generated files no longer require them (561 fewer files
in a GitHub client).
- Ruby: a client generated with a multi-segment `--namespace-name`, such
as `integration_test.client`, failed to load because its root file was
written one directory too deep.
- Ruby: namespace barrels register their models and enums with
`autoload` instead of requiring them, so a subclass no longer fails to
load when its base class file is required first. Other files require the
barrel rather than an individual model file, and models now load on
first use. A type no barrel autoloads, such as a model named after its
namespace, is now required directly: 1,315 constants referenced by a
Meraki client never loaded, and a client generated from the current
GitHub description failed to load because it required a file that is
never written. [#​7956](microsoft/kiota#7956)
- Ruby: model properties are declared with `attr_accessor`, which
removes the thousands of "possibly useless use of a variable" warnings
`ruby -w` printed while loading a client.
- Ruby: enum hashes are frozen.
[kiota-ruby#​68](microsoft/kiota-ruby#68)
- C#: escape Unicode line and paragraph separators in generated string
literals so generated clients remain valid C# source.
- External reference allowlist wildcards no longer cross the URI
authority boundary, so a wildcard in the scheme or host cannot match
text in the path, the user information or the port.
- Initialize inherited Dart model fields in constructor initializer
lists.
- Replace only unresolved binary types with a native stream type, and
translate a resolved model by its definition rather than its name, so a
model whose schema is named `binary`, `base64` or `base64url` keeps its
own name across every language instead of being rendered as the native
binary type. Generation no longer fails for C# and Java.
- Avoid redundant parsing branches for equivalent binary alternatives in
Dart and PHP composed models.
- Preserve imports for distinct types from the same namespace when
inlining error model inheritance.
- Dart: qualify model fields named `node` or `deserializerMap` during
deserialization so local variables do not shadow them; escape `override`
model members to preserve Dart annotations. Fixes
[#​7822](microsoft/kiota#7822).
- PHP: disambiguate enum constants that normalize to the same name while
preserving wire values and existing constant names.
- Java: omit unused discriminator-mapping imports for union/intersection
wrappers, avoiding imports of nonexistent models while retaining member
and inherited-factory imports.
- Dart: omit unused discriminator-mapping imports for composed wrappers
while preserving member and inherited-factory imports. Addresses
[#​7821](microsoft/kiota#7821).
- Preserve endpoints whose static path segments collide after name
sanitization, such as /v1.1 and /v11.
[#​7143](microsoft/kiota#7143)

- Ruby: a path with an escaped suffix, such as
`/domains/{domainName}!quote`, generated a request builder method that
passed the raw path parameter name where the signature had snake cased
it, and referenced the builder class without its namespace. Both raised
`NameError` on first use.
[#​7956](microsoft/kiota#7956)
 ... (truncated)

Commits viewable in [compare
view](microsoft/kiota@v1.35.0...v1.36.1).
</details>

Updated
[xunit.runner.visualstudio](https://github.com/xunit/visualstudio.xunit)
from 4.0.0 to 4.0.1.

<details>
<summary>Release notes</summary>

_Sourced from [xunit.runner.visualstudio's
releases](https://github.com/xunit/visualstudio.xunit/releases)._

## 4.0.1

Release notes: https://xunit.net/releases/visualstudio/4.0.1

Commits viewable in [compare
view](xunit/visualstudio.xunit@4.0.0...4.0.1).
</details>

Updated [xunit.v3](https://github.com/xunit/xunit) from 4.0.0 to 4.0.2.

<details>
<summary>Release notes</summary>

_Sourced from [xunit.v3's
releases](https://github.com/xunit/xunit/releases)._

No release notes found for this version range.

Commits viewable in [compare
view](https://github.com/xunit/xunit/commits).
</details>

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Steinar Hjellvik <38071413+shjellvik@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

Guid JSON parse converter precedence bypasses custom converter for standard GUID strings

3 participants