sdk-python icon indicating copy to clipboard operation
sdk-python copied to clipboard

feat(v2): full implementation for kafka bindings

Open PlugaruT opened this issue 2 months ago • 6 comments

Changes

  • Full implementation of Kafka bindings

One line description for the changelog

  • [ ] Tests pass
  • [ ] Appropriate changes to README are included in PR

PlugaruT avatar Nov 26 '25 10:11 PlugaruT

@xSAVIKx here's another one.

Another topic that I'd like to discuss is what would be the approach next? I'd like to remove entirely v1 package from v2 branch and start working towards a possible release? Since I think both v1 and v2 would be with the same feature set.

Also, what's your take on the protocol implementation? I took a look at go sdk for example, and they implemented the full Kafka protocol and integrated it with confluent-kafka-go lib for example, I assume same can be said about MQTT and other protocols. Do we plan to add support for this? Or, we want to keep the package light and allow users to define the protocol how they see fit?

PlugaruT avatar Nov 26 '25 10:11 PlugaruT

@xSAVIKx ping, in case you somehow missed the notification. thanks

PlugaruT avatar Dec 09 '25 09:12 PlugaruT

Hey @PlugaruT , thx for the ping. I did miss it.

I will try to get back with an answer and a review later today. Thank you 🙏

xSAVIKx avatar Dec 09 '25 10:12 xSAVIKx

Another topic that I'd like to discuss is what would be the approach next? I'd like to remove entirely v1 package from v2 branch and start working towards a possible release? Since I think both v1 and v2 would be with the same feature set.

IMO it is a good idea to release a first v2 version with v1 compatibility package. And then remove the compatibility package in a follow-up release.

Also, what's your take on the protocol implementation? I took a look at go sdk for example, and they implemented the full Kafka protocol and integrated it with confluent-kafka-go lib for example, I assume same can be said about MQTT and other protocols. Do we plan to add support for this? Or, we want to keep the package light and allow users to define the protocol how they see fit?

the main package should be kept lightweight - that's for sure. we can implement the full support for a desired library/libraries as optional deps or separate packages IMO.

xSAVIKx avatar Dec 11 '25 19:12 xSAVIKx

the main package should be kept lightweight - that's for sure. we can implement the full support for a desired library/libraries as optional deps or separate packages IMO.

Something like cloudevents[kafka], cloudevents[http], cloudevents[amqp]? I agree with this approach, users can only install the spec implementation and they can deal with the protocol, or, have extra deps in their app and we deal with the protocol.

PlugaruT avatar Dec 12 '25 08:12 PlugaruT

@xSAVIKx let's get this merged and I'll come up with something in another PR

PlugaruT avatar Dec 12 '25 13:12 PlugaruT