[
https://issues.apache.org/jira/browse/KAFKA-17939?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17895517#comment-17895517
]
A. Sophie Blee-Goldman commented on KAFKA-17939:
------------------------------------------------
Yeah it's definitely just untenable to remove Bytes from the Streams API. Not
just because of the effort on our end to remove it from the codebase, but
because of the users who would need to then adapt their code, which seems
unnecessary. So I'm for sure +1 on making Bytes officially part of the public
API.
The question is, how? If we change the package then users still have to change
their code, though admittedly much less so than removing Bytes from the API
altogether. And splitting up a package into public APIs and internal APIs seems
like it would cause a lot of confusion. Frankly I kind of feel like it's
confusing enough that the utils are considered private/internal but aren't
under an internals/ package, which imo is how most users attempt to discern
between public and private APIs (how many of them even know about the "do we
publish javadocs for it?" rule in the first place?)
So: what if we just left the Bytes class where it is, and shifted everything
else in utils/ into a utils/internals subdirectory? I imagine any IDE can do
this with minimal effort on our part, and this way users don't have to change
anything nor do we need to do anything in Streams. Thoughts?
> Kafka Streams API exposes org.apache.kafka.common.utils.Bytes which is not
> part of the public API
> -------------------------------------------------------------------------------------------------
>
> Key: KAFKA-17939
> URL: https://issues.apache.org/jira/browse/KAFKA-17939
> Project: Kafka
> Issue Type: Task
> Components: streams
> Reporter: Mickael Maison
> Priority: Major
>
> Quite a few public API classes/interfaces in org.apache.kafka.streams and
> org.apache.kafka.streams.kstreams expose the
> org.apache.kafka.common.utils.Bytes class. However Bytes is not part of the
> public API.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)