oban v2.10.0 Release Notes

Release Date: 2021-11-09 // over 2 years ago
  • Retired: This version is retired and superseded by v2.10.1 due to the ๐Ÿ›  immediate reversion of telemetry prefixes

    โž• Added

    • [Oban.Telemetry] Add customizable prefix for all telemetry events.

    For example, a telemetry prefix of [:my_app, :oban] would span job start telemetry events as [:my_app, :oban, :job, :start]. The default is [:oban], which matches the existing functionality.

    ๐Ÿ›  Fixed

    • ๐Ÿ”Œ [Oban.Plugins.Stager] Use the notifier to broadcast inserted and available jobs rather than inlining them into a Postgres query.

    With this change the notifier is entirely swappable and there isn't any reason to use the Repeater plugin in production.

    • ๐Ÿ”Œ [Oban.Plugins.Cron] Validate job options on init.

    Providing invalid job args in the cron tab, e.g. priority: 5 or unique: [], wasn't caught until runtime. At that point each insert attempt would fail, crashing the plugin.

    • ๐Ÿ‘ท [Oban.Queue.Producer] Prevent crashing on exception formatting when a job exits without a stacktrace, most notably with {:EXIT, pid}.

    • โœ… [Oban.Testing] Return invalid results from perform_job, rather than always returning nil.

    • [Oban] Validate that a queue exists when controlling or checking locally, e.g. calls to Oban.check_queue or Oban.scale_queue.

    • โš  [Oban.Telemetry] Use module capture for telemetry logging to prevent warnings.