Changelog

All notable changes to kotlin-events.

1.0.02026-04-21

Added

  • Multi-module architecture: events-core (synchronous) and events-coroutines (suspending)
  • Type-safe event bus with DI-resolved listeners via Listener<T> and SuspendingListener<T>
  • Lambda listeners (on), one-shot listeners (once), and catch-all (onAny)
  • Middleware pipeline with use — intercept dispatch for logging, metrics, or short-circuiting
  • Registration DSL for bulk event-listener mappings
  • Event hierarchy dispatch — parent listeners receive child events
  • Thread-safe implementation with snapshot-based dispatch and AtomicBoolean once guarantees
  • Error resilience — remaining listeners execute after failures, errors collected into CompositeEventException
  • Suspend onError handler in coroutines module
  • Interface segregation: Emitter, Subscriber, Inspector
  • EventServiceProvider and SuspendingEventServiceProvider for container integration
  • Reified extension functions for ergonomic type-safe API