4.30.0

(feat): Configures the flatten_oneofs configuration option for protoc-gen-openapi. When flatten_oneofs is enabled, the generated OpenAPI schema will flatten oneOf structures with a single schema. No additional configuration is required by the user.

(fix): Add the respectByteFormat configuration option, which is implicitly enabled for gRPC/Protobuf specs.

4.29.0

(feat): Add AI changelog rollup for multi-chunk diff analysis. When large diffs are split into multiple chunks, the resulting changelog entries are now consolidated via a dedicated AI call that deduplicates repetitive bullets, groups changes under Keep a Changelog headers (Breaking Changes, Added, Changed, Fixed), and produces a structured PR description with Before/After code fences for breaking changes. Also adds a version_bump_reason field to AI analysis responses, providing an explicit one-sentence justification for why MAJOR/MINOR/PATCH was chosen.

4.28.0

(feat): Add coerce-consts-to setting for controlling how OpenAPI/AsyncAPI const values are represented. Set to literals to convert them directly to literals with defaults; set to enums (the default, current behavior) to convert them to single-valued and therefore extensible enums.

When coerce-consts-to is enums, the coerce-enums-to-literals setting will not transitively apply to const-originated enums, keeping the two concepts independent.

Usage:

1api:
2 specs:
3 - asyncapi: ./asyncapi.yaml
4 settings:
5 coerce-consts-to: literals

4.27.0

(feat): Log detected .fernignore paths when copying generated files. When a .fernignore file is present in the output directory, the CLI now emits a debug-level message listing the preserved paths. This improves observability for both fern generate and pnpm seed run workflows.