Skip to content

Releases: Bogdanp/dramatiq

v1.5.0

18 Feb 08:43
Compare
Choose a tag to compare

Added

  • The RabbitMQ broker now supports native message priorities. (#157, @davidt99)
  • Support for specifying the actor class to @actor. (#169, @gilbsgilbs)

Changed

  • Pika 0.13 is now required.

Fixed

  • Consumers are now stopped after workers finish running their tasks. (#160, @brownan)
  • Worker logging on Python 3.7 is no longer delayed.

v1.4.3

08 Jan 09:24
5f41830
Compare
Choose a tag to compare

Fixed

  • Changed license classifier to the correct license. This is why you shouldn't publish changed before you've had coffee, folks!

v1.4.2

08 Jan 09:24
81a0004
Compare
Choose a tag to compare

This release was removed from PyPI because it had a bad license classifier (GPLv3+ instead of LGPLv3+) due to a mistake on my part.

Fixed

  • License classifier in PyPI package. There were no source code
    changes for this release.

v1.4.1

30 Dec 12:17
4d7bded
Compare
Choose a tag to compare

Added

Fixed

  • Workers wait for RMQ messages to be acked upon shutdown. (#148)
  • Pipelines no longer continue when a message is failed. (#151, @davidt99)
  • Log files now work under Windows. (#141, @ryansm1)

v1.4.0

25 Nov 12:41
5399932
Compare
Choose a tag to compare

This is a big one!

Added

  • Barriers.

Changed

  • cli.main now takes an optional argument namespace so that users
    may define their own entrypoints. (#140, @maerteijn)
  • Actor "message received" and "completed in x ms" log messages are
    now logged with the DEBUG level instead of INFO level. This
    improves throughput and makes logging much less verbose.
  • The TimeLimit middleware no longer uses signals to trigger time
    limit handling. Instead it uses a background thread per worker
    process.
  • Dramatiq now shuts itself down if any of the workers die
    unexpectedly (for example, if one of them is killed by the OOM
    killer).
  • Windows is now supported (with some caveats)! (#119, @ryansm1)

Fixed

  • Allow pipe_ignore option to be set at the actor level. (#100)
  • Result encoder now defaults to the global encoder. (#108, @xdmiodz)
  • Dot characters are now allowed in queue names. (#111)
  • Tests are now run on Windows. (#113, @ryansm1)

v1.3.0

05 Jul 14:15
450f3ef
Compare
Choose a tag to compare

Changed

  • Upgraded prometheus_client to 0.2.x.
  • Bumped pika to version 0.12. Because of this change, the interrupt method on Broker and its usages within Worker have been dropped.
  • There is no longer a max message delay.

Fixed

  • Brokers can now be passed an empty list of middleware. (#90)
  • Potential stack overflow when restarting Consumer threads. (#89)

v1.2.0

01 Jun 12:47
cb4b676
Compare
Choose a tag to compare

Added

  • Support for worker heartbeats to RedisBroker.
  • maintenance_chance and heartbeat_timeout parameters to
    RedisBroker.
  • Interrupt base class for thread-interrupting exceptions. (@rpkilby)
  • ShutdownNotifications middleware. (@rpkilby)

Changed

  • TimeLimitExceeded is now a subclass of Interrupt.

Fixed

  • StubBroker.join and Worker.join are now more reliable.
  • Module import path is now prepended to search path rather than
    appended. This fixes an issue where importing modules with the same
    name as modules from site-packages would end up importing the
    modules from site-packages. (#88)
  • Prometheus middleware no longer wipes the prometheus data
    directory on startup. This fixes an issue with exporting
    application metrics along with worker metrics.