Stop serializing computed xoauth2 getter that broke MailCredentials Redis cache

FixEmailService
Shipped
July 9, 2026 at 6:04 AM UTC
Author
Kamo
Commit
cc26d7a

MailCredentials is cached in Redis (GenericJackson2Json). The added `isXoauth2()` boolean getter was serialized as a "xoauth2" property but has no field to read back into, so every cached-credential read threw UnrecognizedPropertyException -> SerializationException, 500ing listFolders for ALL providers (KamoMail + M365) — /messages stopped loading. Regression from the prior commit. - @JsonIgnore on isXoauth2()/secret() so the computed methods aren't serialized. - **************** so entries already cached with the stray "xoauth2" field deserialize cleanly (self-heals; no cache flush needed).

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing