conduktor.io ↗

KIP-754 — Make Scala case class's final

Discussion Broker

Makes Scala case classes in the Kafka codebase `final` to align with Scala best practices for algebraic data types (ADTs) that represent immutable data. Non-final case classes break pattern-match exhaustiveness checking and allow subclassing that can violate the value-semantics contract of case classes.

Details

AuthorMatthew de Detrich
StatusDiscussion
JIRAKAFKA-12913
WikiView on Apache Wiki
Created2021-06-08
Last Modified2021-06-08
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.