3.37.0
(chore): Add Excel file support (.xlsx) to the allowed file types for documentation uploads. This enables users to host Excel files using the <Download /> component.
3.36.0
(feat): The fern init command now automatically creates a .gitignore file inside the fern/ folder with entries to ignore .preview and .definition directories.
3.35.2
(fix): Default dynamic SDK snippets on if the experimental configuration is already present.
3.35.1
(fix): Respect the path-parameter-order setting from generators.yml when importing OpenAPI specs, which is different from the path-parameter-order on the api.settings level.
By setting both levels to spec-order, you can preserve the old behavior of using the order defined in the OpenAPI spec.
(fix): Fix local generation to convert self-hosted GitHub URI (owner/repo) to full URL format,
matching Fiddle’s remote generation behavior.
3.33.0
(fix): Fix handling of OpenAPI schemas that use discriminator.mapping without explicit oneOf/anyOf. These schemas are now correctly converted as discriminated unions instead of plain objects. This pattern is used by APIs like Dropbox Sign where a base schema defines a discriminator with mapping to variant schemas.
3.35.0
(feat): Add x-fern-parameter-name extension support for AsyncAPI parameters. This allows customizing parameter names in generated SDKs for AsyncAPI specs, similar to existing OpenAPI support.
3.34.0
(feat): Updates the SDK snippet generation to use dynamic snippets by default. To disable, set experimental.dynamicSnippets to false in your docs.yml file.
3.32.0
(feat): Add extends field to dynamic IR ObjectType to expose inheritance information for generators that need to handle inheritance patterns differently (e.g., Rust uses flattened wrapper fields).
3.31.2
(fix): Fix broken link checker incorrectly flagging internal paths with external redirects as broken. Links to paths that redirect to external URLs (e.g., /ui → https://auth-platform.example.com) are now correctly validated.
3.31.1
(fix): Fix double JSON.stringify in dynamic IR upload, reducing memory usage and ensuring correct Content-Length header calculation with Buffer.byteLength.
3.31.0
(fix): Add a --dynamic-ir-only flag to SDK generation to enable access to dynamic snippets from SDKs without regenerating the entire SDK.
3.30.6
(fix): Only upload dynamic IR for SDK generation after confirmed success and when not in preview mode.
3.30.5
(fix): Support x-fern-base-path extension in the OpenAPI v3 parser.
3.30.4
(chore): Add ACH to special tokens list to preserve capitalization in docs sidebar navigation.
3.30.3
(chore): Adds a product-switcher.toggle theme option to the docs configuration.
3.30.2
(fix): Export all defined auth schemes when using endpoint-security auth in generators.yml.
3.30.1
(fix): Update generators.yml schema SDK update to include api.auth.endpoint-security support.
3.30.0
(feat): Support using local icons in <Card /> and <Icon /> components.
3.29.1
(chore): Make version optional when fetching dynamic IR from SDK uploads. If no version is explicitly specified in the api snippets config, the CLI will not send a version and the API will use the latest available version.
3.29.0
(feat): Add fern docs preview delete <url> command to delete preview deployments. This allows users to clean up preview sites that were generated with fern generate --docs --preview.
(feat): Add fern docs preview list command to list all preview deployments with pagination support via --limit and --page options.
3.28.0
(feat): Refactor fern check output with improved formatting and severity labels. Violations are now displayed in a hierarchical format grouped by [sdk] and [docs], with [error] (red) and [warning] (yellow) labels for each violation. When multiple APIs exist, violations are further grouped by API name. Additional UX improvements include: blue-colored paths, cyan [sdk] and magenta [docs] headers for visual distinction, warnings displayed before errors, blank lines between violations for readability, and inline issue display when path is empty.
3.27.3
(chore): Updates dynamic snippets to pull from an SDK version, if available and specified in the api.snippets configuration.
3.27.2
(fix): Fix example resolution to treat dollar-prefixed strings as literals when they don’t match the valid example reference format. Strings like "$3.00", "$USD", or "$PATH" are now treated as literal values without requiring escaping. Valid example references (e.g., $Type.Example or $import.Type.Example) continue to work as expected.
3.27.1
(fix): Fix fern docs dev hot reload to properly restart the docs server when files change.