Dramatiq Versions Save

A fast and reliable background task processing library for Python 3.

v1.4.3

5 years ago

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

5 years ago

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

5 years ago

Added

  • Support for redis-py 3.x. (#142, @maerteijn)

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

5 years ago

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

5 years ago

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

6 years ago

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.