# Upgrading to WaterDrop 2.5 Please note, this **is** a **breaking** release, hence `2.5.0`. 1. If you used to catch `WaterDrop::Errors::FlushFailureError` now you need to catch `WaterDrop::Errors::ProduceError`. `WaterDrop::Errors::ProduceManyError` is based on the `ProduceError`, hence it should be enough. 2. Prior to `2.5.0` there was always a chance of partial dispatches via `produce_many_` methods. Now you can get the info on all the errors via `error.occurred`. 3. Inline `Rdkafka::RdkafkaError` are now re-raised via `WaterDrop::Errors::ProduceError` and available under `#cause`. Async `Rdkafka::RdkafkaError` errors are still directly available and you can differentiate between errors using the event `type`. 4. If you are using the Datadog listener, you need to: ```ruby # Replace require: require 'waterdrop/instrumentation/vendors/datadog/listener' # With require 'waterdrop/instrumentation/vendors/datadog/metrics_listener' # Replace references of ::WaterDrop::Instrumentation::Vendors::Datadog::Listener.new # With ::WaterDrop::Instrumentation::Vendors::Datadog::MetricsListener.new ``` --- *Last modified: 2025-04-29 12:37:29*