Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Mention shim module potential future work

...

  • Deprecate Scala 2.11 build in Kafka 2.4.
  • Update build.gradle to remove all tasks for Scala 2.11 and remove code in build.gradle and dependencies.gradle that is conditional on Scala 2.11.
  • Deprecate FunctionsCompatConversions and other workarounds in org.apache.kafka.streams.scala.kstream.Suppressed in kafka-streams-scala in order to support as it is only needed for Scala 2.11 support.

  • Update Readme not to mention Scala 2.11 as a supported version.
  • Remove any other workarounds needed by Scala 2.11 (e.g. a number of methods in `CoreUtils` can be removed).
  • Introduce a shim `core` module that targets the default scala version. This useful for applications that do not require a specific Scala version. Java applications that shade Scala dependencies or Java applications that have a single Scala dependency would fall under this category. We will target Scala 2.13 in the initial version of this module.

Compatibility, Deprecation, and Migration Plan

...

  1. Drop support for Scala 2.11 in Kafka 3.0 instead. There is no date set for Kafka 3.0 and the cost seems to outweigh the benefits.

Potential Future Work

  1. Remove different scala versions as an option for the `core` jar in Kafka 3.0. This would work best if combined with a Java API for broker integration testing.