From a5491ac19ec5d427dede5b63f66c55db240e64f1 Mon Sep 17 00:00:00 2001 From: Maciej Mensfeld Date: Wed, 7 Dec 2022 15:44:05 +0100 Subject: [PATCH 1/3] Add deprecation notice --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 27ba3133..f2a5b4ff 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,9 @@ +# Deprecation notice + +This library is **no longer** actively developed and has been superseded by [`librdkafka`](https://github.com/edenhill/librdkafka) via [`rdkafka-ruby`](https://github.com/appsignal/rdkafka-ruby/) bindings. While this library may still receive security patches and bug fixes, it is no longer recommended for production usage. + +There needs to be a concerted effort to keep up with Kafka features. There is no point in trying to keep up with Kafka development when other languages use a well-established C binding and get more official support. + # ruby-kafka A Ruby client library for [Apache Kafka](http://kafka.apache.org/), a distributed log and message bus. The focus of this library will be operational simplicity, with good logging and metrics that can make debugging issues easier. From 65322a03cf62eb7b8b1a73b34e9b216532bc9eda Mon Sep 17 00:00:00 2001 From: Maciej Mensfeld Date: Wed, 7 Dec 2022 18:24:22 +0100 Subject: [PATCH 2/3] Update ruby-kafka.gemspec --- ruby-kafka.gemspec | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ruby-kafka.gemspec b/ruby-kafka.gemspec index d50092dc..929be9ef 100644 --- a/ruby-kafka.gemspec +++ b/ruby-kafka.gemspec @@ -51,4 +51,10 @@ Gem::Specification.new do |spec| spec.add_development_dependency "rubocop", "~> 0.49.1" spec.add_development_dependency "gssapi", ">= 1.2.0" spec.add_development_dependency "stackprof" + + spec.post_install_message = %q{ +This library is **no longer** actively developed and has been superseded by librdkafka via rdkafka-ruby bindings. + +While this library may still receive security patches and bug fixes, it is no longer recommended for production usage. +} end From d8d31da3c748bdaf0703ce4b19137ad69b62bc32 Mon Sep 17 00:00:00 2001 From: Maciej Mensfeld Date: Wed, 7 Dec 2022 19:12:16 +0100 Subject: [PATCH 3/3] Update README.md --- README.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index f2a5b4ff..5e303461 100644 --- a/README.md +++ b/README.md @@ -1322,11 +1322,13 @@ Latest stable release, with native support for the Kafka 0.10 protocol and event Currently, there are three actively developed frameworks based on ruby-kafka, that provide higher level API that can be used to work with Kafka messages and two libraries for publishing messages. +**Note**: Many of the frameworks and libraries below use `ruby-kafka` only in older versions. See the deprecation notice at the top of this readme for more details. + ### Message processing frameworks -* [Racecar](https://github.com/zendesk/racecar) - A simple framework that integrates with Ruby on Rails to provide a seamless way to write, test, configure, and run Kafka consumers. It comes with sensible defaults and conventions. +* [Racecar 1.3](https://github.com/zendesk/racecar/tree/v1-stable) - A simple framework that integrates with Ruby on Rails to provide a seamless way to write, test, configure, and run Kafka consumers. It comes with sensible defaults and conventions. -* [Karafka](https://github.com/karafka/karafka) - Framework used to simplify Apache Kafka based Ruby and Rails applications development. Karafka provides higher abstraction layers, including Capistrano, Docker and Heroku support. +* [Karafka 1.4](https://github.com/karafka/karafka/tree/1.4) - Framework used to simplify Apache Kafka based Ruby and Rails applications development. Karafka provides higher abstraction layers, including Capistrano, Docker and Heroku support. * [Phobos](https://github.com/klarna/phobos) - Micro framework and library for applications dealing with Apache Kafka. It wraps common behaviors needed by consumers and producers in an easy and convenient API. @@ -1334,7 +1336,7 @@ Currently, there are three actively developed frameworks based on ruby-kafka, th * [DeliveryBoy](https://github.com/zendesk/delivery_boy) – A library that integrates with Ruby on Rails, making it easy to publish Kafka messages from any Rails application. -* [WaterDrop](https://github.com/karafka/waterdrop) – A library for Ruby and Ruby on Rails applications, to easy publish Kafka messages in both sync and async way. +* [WaterDrop 1.4](https://github.com/karafka/waterdrop/tree/1.4) – A library for Ruby and Ruby on Rails applications, to easy publish Kafka messages in both sync and async way. ## Why Create A New Library?