1.21.0
(feat): Add an opt-in allowUserAgentAppInfo config (default false). When enabled, the
generated client accepts an optional app_info keyword
({ name:, version:, comment: }) whose product token is appended to the
User-Agent header for all three branches (the structured platform value, the
configured user-agent template value, and the default {package}/{version}),
producing e.g. acme/0.0.1 partner-app/3.1.0 (+https://partner.example) per
RFC 9110. Caller-supplied values are sanitized (name/version percent-encoded to
RFC 7230 tchars; comment delimiters and control characters escaped) and trimmed
before encoding, so untrusted values cannot inject additional header content. The
header is still overridable by an explicit User-Agent and suppressed by
omitFernHeaders. Default-off output is byte-identical.