Hi Pierre and Jason,

A comment below.

On Wed, Jan 27, 2016 at 9:01 PM, Jason Gustafson <ja...@confluent.io> wrote:

> Hi Pierre,
>
> Thanks for your persistence on this issue. I've gone back and forth on this
> a few times. The current API can definitely be annoying in some cases, but
> breaking compatibility still sucks. We do have the @Unstable annotation on
> the API, but it's unclear what exactly it means and I'm guessing most users
> haven't even noticed it. In the end, I feel we should try harder to keep
> compatibility even if it means keeping some of the annoying usage. As an
> alternative, maybe we could do the following:
>
> 1. For subscribe() and assign(), change the parameter type to collection as
> planned in the KIP. This is at least source-compatible, so as long as users
> compile against the updated release, there shouldn't be any problems.
>
> 2. Instead of changing the signatures of the current pause/resume/seek
> APIs, maybe we can overload them. This keeps compatibility and supports the
> more convenient collection usage, but the cost is some API bloat.
>

What if we deprecate the existing pause/resume/seek APIs in favour of the
new overloads? That would give us compatibility between 0.9.0.x and 0.9.1.x
while giving us the option of removing those methods in a future release.

Ismael

Reply via email to