0.17.2

(fix): Add serde helpers for base64 and BigInt types to properly serialize/deserialize these types in JSON. Add execute_request_base64 method for handling base64 primitive endpoint responses. Fix union variant serde rename to be case-sensitive for proper JSON deserialization.

0.17.1

(fix): Fix compilation errors when generating SDKs without streaming endpoints by conditionally including sse_stream.rs only when streaming endpoints exist. Also fix missing FixedOffset import for DateTime types when dateTimeType is set to “offset” (the default).


0.17.0

(feat): Add OAuthTokenProvider for automatic OAuth token management with caching and refresh support. The provider implements thread-safe token caching with a 2-minute expiration buffer, double-checked locking pattern for concurrent access, and automatic token refresh.


0.16.0

(feat): Add packageLicenseFile config option to support custom license files. When set, uses license-file instead of license in Cargo.toml, allowing users to reference custom LICENSE.md files that are not standard SPDX identifiers.

0.15.0

(feat): Add platform headers (X-Fern-Language, X-Fern-SDK-Name, X-Fern-SDK-Version) to all HTTP requests. These headers help identify SDK usage and version for API analytics and debugging.


0.14.3

(chore): Update Dockerfile to use the latest generator-cli with improve reference.md generation.

0.14.2

(fix): Remove redundant type imports from README code snippets. The prelude import already re-exports all types via pub use crate::api::*;, so the additional explicit type imports were unnecessary.


0.14.1

(chore): Support complex dependency specs in extraDependencies and extraDevDependencies config. Dependencies can now be specified as either version strings or full RustDependencySpec objects with features, optional, git, path, and other Cargo.toml options. Also made API key header name configurable via IR auth schemes.


0.14.0

(feat): Change default datetime type to DateTime<FixedOffset> with flexible parsing. This preserves original timezone offsets from server responses while accepting any datetime format (with or without timezone). When no timezone is provided, UTC is assumed. Use dateTimeType: "utc" to convert all datetimes to UTC instead.



0.13.9

(fix): Preserve parameter order in dynamic snippets to match API schema definition order. Struct fields in generated Rust code now appear in the same order as defined in the API specification.


0.13.8

(fix): Fix wire test request type naming to use IR declaration names instead of synthetic endpoint-based names. This ensures generated tests use correct type names like ResponseChargeBack instead of AddResponseRequest.

0.13.7

(fix): Fix wire test compilation by avoiding Default::default() on non-Default types. Always explicitly provide all fields in generated wire tests instead of relying on Default trait derivation.