> This page is for SDKs, version Legacy.
> For other versions, use one of these documentation indexes:
> - Current (default): https://buildwithfern.com/learn/sdks/current/llms.txt
> - Legacy: https://buildwithfern.com/learn/sdks/legacy/llms.txt

> For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://buildwithfern.com/learn/llms.txt.

## 2.20.2

**`(fix):`** Wire test assertions now use JSON element comparison instead of object equality, resolving false failures when comparing collections inside undiscriminated union types.

**`(fix):`** Fix mock response data generation to omit null values for optional-but-not-nullable properties, matching SDK serialization behavior.

**`(fix):`** Fix nullability warning (CS8764) in undiscriminated union JsonConverter by using non-optional return type for ReadAsPropertyName method.

## 2.20.1

**`(fix):`** Fix ambiguous type references (CS0104) for sub-client interfaces when multiple sub-clients share the same name in different namespaces.

**`(fix):`** Fix duplicate implicit conversion operators (CS0557) for undiscriminated unions with multiple variants that resolve to the same type.

**`(fix):`** Add transitive implicit conversion operators for nested undiscriminated unions.

## 2.20.0

**`(chore):`** Remove .NET 6 (EOL 2024/10/12) and 7 (EOL 2024/05/14) target frameworks from generated SDKs as they are no longer supported by Microsoft.
The generated SDKs now only target .NET Framework 4.6.2, .NET Standard 2.0, and .NET 8.

## 2.19.7

**`(fix):`** Top-level clients now use interface types for sub-clients instead of concrete types.

## 2.19.6

**`(fix):`** Fix wire test generation to preserve string field values that contain datetime-like strings.