> 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.

## 5.14.1

**`(fix):`** Fix SSE streaming performance regression by caching `pydantic.TypeAdapter` instances
in `parse_obj_as()`. Previously, a new TypeAdapter was constructed on every call, which
is extremely expensive for discriminated union types. This caused \~8x slowdown in SSE
event parsing introduced in v4.51.0 (`parse_sse_obj`).

## 5.14.0

**`(feat):`** Add support for the `x-fern-base-path` OpenAPI extension. Root path
parameters declared on the base path are hoisted to the client
constructor; endpoint methods no longer take them as arguments and
URL substitution reads them from the client wrapper.

## 5.13.1

**`(fix):`** Use `hasWebSocketInTree` IR field to wire WebSocket sub-clients into the
root client, even when the WebSocket channel lives on a nested sub-resource
rather than the top-level namespace package.