Hi all, Following Chia-Ping's feedback, I updated the KIP and changed the target release from Kafka 4.4 to 4.5 because the 4.4 KIP freeze has passed.
The scan identified 75 heavily used candidates for class-by-class maintainer review. The KIP now includes the complete list, the discovery method, the usage metrics and limitations, and a review row for each class. External usage only prioritizes the discussion; it does not classify a class or automatically select deprecation. Only `org.apache.kafka.common.utils.Utils` is currently proposed for staged deprecation: deprecated in Kafka 4.5 through a delegating compatibility shim, then removed in Kafka 5.0. The remaining unresolved rows are explicitly marked `Pending maintainer review`, not presented as agreed decisions. Chia-Ping also suggested a possible strategy for the `Cache` family: deprecate `SynchronizedCache` and `LRUCache`, and move their implementation into the `Cache` interface. I recorded `Cache` for maintainer review even though its combined count of 937 is below the initial threshold. KIP-1265 gives Kafka a consistent Private classification and an opt-in checker, but it does not produce compiler deprecation warnings or define a removal schedule. KIP-1320 adds a staged transition only for classes that maintainers separately confirm should receive one. Details and generated results are available here: - KIP: https://cwiki.apache.org/confluence/spaces/KAFKA/pages/421954685/KIP-1320+Deprecate+heavily+used+internal+APIs - PoC and results: https://github.com/unknowntpo/kafka/tree/kip-1320-poc/api-checker/kip-1320-inventory-poc I would appreciate maintainer input on the `Utils` 4.5-to-5.0 transition, the proposed `Cache` strategy, and the remaining per-class decisions. Thanks, Eric
