KIP-1311 — Extract minimal public Time interface from internal Time API
Discussion ClientStreams
Introduces a minimal public `org.apache.kafka.common.Time` interface exposing only `milliseconds()`, makes the existing internal `org.apache.kafka.common.utils.Time` extend it, and switches public constructors (KafkaStreams, Metrics, ClientCredentialsJwtRetriever, JwtBearerJwtRetriever) to the public type. The internal Time interface already leaks through public constructors without official public designation, and it bundles unrelated responsibilities (monotonic clocks, sleep/wait coordination, timer creation) that public API consumers never need.
Details
| Author | Siddhartha Devineni |
| Status | Discussion |
| JIRA | KAFKA-20297 |
| Wiki | View on Apache Wiki |
| Created | 2026-04-02 |
| Last Modified | 2026-07-29 |
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.