Skip to content

Remove old Simple clients #1193

Closed
Closed
@jeffwidman

Description

@jeffwidman

I'd like to propose removing all the old SimpleClient/Consumer/Producer code.

My rationale is that whenever I open this codebase to debug or work on something, it requires excessive mental overhead to keep in my head which files are relevant and which are for the old stack. Similarly, when I'm checking whether a test exists for a certain scenario, I have to further doublecheck whether the test is running using the old SimpleClient or the new KafkaClient. Several times I popped this library open to look at what it'd take to achieve #948 and gave up in frustration at the mess of trying to track what needs to be changed and what I can't touch for fear of breaking the old clients.

Since the old SimpleClients are deprecated and frankly not really maintained, we lose little by removing them.

The major effect would be felt by anyone running mixed-mode but can't run two version of this library, either because they've got a monolith or they've migrated consumer but not yet producer, or because they ship a single virtualenv to all microservices (my day job currently does this, and while it saved a lot of time initially, it's now causing quite a bit of pain.) At my day job we are actually not yet fully migrated to the new KafkaClients, so we'd be stuck on the old version for another couple of releases, but I still think it's worth starting to do this.

This is obviously a major breaking change, so would be part of a 2.0 release.

@dpkp / @tvoinarovskyi what do you think?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions