Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions fern/products/sdks/overview/java/changelog/2025-09-09.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
## 3.0.0
**`(break):`** The SDK generator now defaults to forward-compatible enums, providing resilience against new enum variants
added on the backend. This is a breaking change that affects the structure of generated enum types.

To revert to the previous behavior with traditional Java enums, add the following configuration to your
`generators.yml` file:
```yaml
generators:
- name: fernapi/fern-java-sdk
config:
enable-forward-compatible-enums: false
```


**`(feat):`** Forward-compatible enums are now enabled by default. Generated SDKs will no longer throw errors when
encountering unknown enum variants, instead handling them gracefully with an UNKNOWN value. This is
particularly important for:
- Mobile applications that cannot be easily updated
- Maintaining backward compatibility when backend adds new enum values
- Arrays of enum values where new variants previously caused client failures

With forward-compatible enums, the generated code changes from traditional Java enums to class-based
enums that support unknown values through a visitor pattern.