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
| Author | Matthew de Detrich |
| Status | Discussion |
| JIRA | KAFKA-12913 |
| Wiki | View on Apache Wiki |
| Created | 2021-06-08 |
| Last Modified | 2021-06-08 |
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.