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

**`(feat):`** Add an `encode_path_params` config option (default `false`). When enabled, path parameter
values are percent-encoded when substituted into the request path, so a value containing `/`
or `..` can no longer change which endpoint the request resolves to. The default `false`
preserves the existing (unencoded) behavior; TypeScript, Go, Java, and C# already encode path
params.

## 5.25.0

**`(feat):`** Add opt-in `allow_user_agent_app_info` config (camelCase alias `allowUserAgentAppInfo`).
When enabled, the generated client accepts an optional `app_info`
(`{"name": ..., "version"?: ..., "comment"?: ...}`) constructor argument whose product
token is appended to the `User-Agent` header
(`{sdk}/{version} ... {product}/{product-version} ({comment})`), following RFC 9110.
Disabled by default, so existing generated output is unchanged. It composes with
`include_platform_headers`, the `user-agent` template config, and the default
`{package}/{version}` value, and survives the `runtime_version` path. Caller-supplied
values are sanitized (name/version token-encoded, comment delimiters and control
characters escaped), and it is still overridable by an explicit `User-Agent` header and
suppressed by `omit_fern_headers`.

## 5.24.2

**`(fix):`** Fix two issues with the opt-in `allow_user_agent_app_info` client option:

* The `app_info` constructor parameter no longer leaks a bare positional `None`
  into generated usage snippets and docstrings, which produced invalid Python
  (a positional argument after keyword arguments). It remains an optional keyword
  argument defaulting to `None`.
* Non-ASCII characters in the `app_info` comment are now percent-encoded (UTF-8).
  Previously they were passed through into the `User-Agent` header, causing httpx
  to raise `UnicodeEncodeError` on every request.