Introduce ability to tag certain objects by including the Karafka::Core::Taggable module.
Set minimum karafka-rdkafka on 0.12.1.
Move RspecLocator to core.
Use karafka-rdkafka instead of rdkafka. This change is needed to ensure that all consecutive releases are stable and compatible.
Relax Ruby requirement to 2.6. It does not mean we officially support it but it may work. Go to Versions Lifecycle and EOL for more details.
Add Karafka::Core::Helpers::Time utility for time reporting.
Allow for recompilation of config upon injecting new config nodes.
Compile given config scope automatically after it is defined.
Support sub-config merging via their nested definitions.
Reverse node compilation state tracking removal.
Move librdkafka generic (producer and consumer) patches from WaterDrop here.
Move dependency on librdkafka here from both Karafka and WaterDrop to unify management.
Move CallbacksManager from WaterDrop because it's shared.
Disallow publishing events that were not registered.
Fix a potential race condition when adding listeners concurrently from multiple threads.
Maintenance release. Cert chain update. No code changes.
Add extracted statistics decorator (#932)
Fix a case where setting would match a method monkey-patched on an object (#1) causing initializers not to build proper accessors on nodes. This is not the core bug, but still worth handling this case.
Initial extraction of common components used in the Karafka ecosystem from WaterDrop.