I had a look into download numbers (unique IPs), and we have three
artifacts:
- kafka-streams-scala_2.11: only for older version (2.4 or older);
basically not used any longer
- kafka-streams-scala_2.12: supported up to 3.9; about 1.2% or KS
developers us it
- kafka-streams-scala_2.13: about 3.5% or KS developers use it
So we have combined about 5% of KS developer using Scala. This is many
thousand of developers.
There is also a ticket about adding Scala 3 support:
https://issues.apache.org/jira/browse/KAFKA-16237
So I would say, overall there is fair usage of this module, so I am not
sure if we would really want to discontinue it?
If we really want to consider to discontinue the kafka-streams-scala
module, we might want to reach out to the user mailing list, too?
For the process, I agree with Ismael that we could deprecate it with a
KIP, but only remove with AK 5.0 release.
-Matthias
On 10/23/25 9:15 AM, Ismael Juma wrote:
Hi Chia-Ping,
There are two places where we use Scala today: `core` (server) and
`streams-scala` (client library). Eliminating Scala from the former is an
internal change and is indeed the plan. Deprecating/removing the latter
requires a KIP since it is a client library with a public API. It's worth a
discussion. Input from folks focused on Kafka Streams would be helpful.
Ismael
On Thu, Oct 23, 2025 at 2:33 AM Chia-Ping Tsai <[email protected]> wrote:
hi all,
While reviewing https://github.com/apache/kafka/pull/20736, I noticed that
streams-scala does not use Scoverage. Given the plan to eventually drop
Scala support entirely, I'm questioning whether improving Scoverage for the
streams-scala module is worthwhile, since that module would be included in
the deprecation. Am I correct in this assessment?
Best,
Chia-Ping