Skip to content

feat: configurable default serialization format for Jackson modules#20

Merged
mariuszs merged 3 commits intomasterfrom
feat/configurable-default-format
Mar 9, 2026
Merged

feat: configurable default serialization format for Jackson modules#20
mariuszs merged 3 commits intomasterfrom
feat/configurable-default-format

Conversation

@mariuszs
Copy link
Member

@mariuszs mariuszs commented Mar 9, 2026

Summary

  • Add FriendlyIdModule(FriendlyIdFormat) and FriendlyIdJackson2Module(FriendlyIdFormat) constructors to allow choosing between Base62 and standard UUID serialization at module level
  • Widen visibility of serializer/deserializer constructors from private to package-private so modules can pass the format flag
  • Default behavior (Base62) preserved — no breaking changes

mariuszs added 3 commits March 9, 2026 21:13
Allow choosing between Base62 (URL62) and standard UUID (RAW) format
at module level via new FriendlyIdModule(FriendlyIdFormat) constructor.
Default behavior (Base62) is preserved for backward compatibility.
fix: simplify AnnotationIntrospector to only override when @IdFormat
is present, allowing module-level default format to take effect
…rride

Identical mapper setup and assertions as shouldRespectPerFieldOverrideWhenModuleIsRaw
@mariuszs mariuszs merged commit 4575c56 into master Mar 9, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant