Dramatiq

Latest version: v1.17.1

Safety actively analyzes 682457 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 5

1.11.0

Added

* `dramatiq.Message.decode` now raises a `dramatiq.DecodeError` on exception. (375, thomazthz)

Changed

* The RabbitMQ broker moves messages that fail to decode to the DLQ. (375, thomazthz)

Fixed

* The Redis broker is now more defensive in how it handles re-enqueueing messages. This should fix a potential race condition where a worker could hit its heartbeat timeout but still end up re-enqueueing messages (thus ending up with the same message id enqueued multiple times). (266, 395)
* A code path that could lead to an unbound variable error has now been fixed. (382)
* Deleting the connection off of a `RabbitMQ` broker now correctly closes it and its associated channel (if any) before removing it from the broker. (381, 384)

1.10.0

Added

* The RabbitMQ broker dead message TTL can now be configured via the `dramatiq_dead_message_ttl` environment variable. (354, evstratbg)
* The CLI now supports referencing a callable to set up the broker on worker startup. (350)
* The `--worker-shutdown-timeout` flag. (330, mic47)

Changed

* The CLI raises an error when the `--watch` flag is set on unsupported platforms. (326, 328, CaselIT)

Fixed

* The CLI now returns code 1 when one of the workers is killed by an unhandled signal. (334, omegacoleman)
* The results middleware now gracefully handles actor-not-found errors during nack. (336, 337, AndreCimander)
* A memory bloat issue with tasks that raise exceptions. (351)
* CI on Windows. (371, gdvalle)

1.9.0

Added

* A custom Redis connection can now be passed to the Redis broker via the new client keyword argument. (274, davidt99)
* Message priority can now be changed in before_enqueue hooks. (313, thomazthz)
* Support for storing actor exceptions. (156)
* Support for silent Retries. (295)
* Support for expected exceptions via the throws actor option. (303, takhs91)
* Support for changing the consumer class in the RabbitMQ and Redis brokers. (316, AndreCimander)

Changed

* Worker processes are no longer daemons. (289, 294, takhs91)

Fixed

* A race condition during command line startup where the wrong exit codes could be returned when subprocesses failed. (286)
* A race condition between worker processes and fork processes during boot. (297)
* A logging race condition on Linux. (171, 286)
* `fileno` has been added to `StreamablePipe`. (291, takhs91)

1.8.1

Fixed

* An issue where an `IndexError` would be raised when multiple middleware containing fork functions were defined. (271)

1.8.0

Added

* Support for forking and running arbitrary functions (so-called “fork functions”). (127, 230)
* The `--fork-function` flag.
* The `--skip-logging` flag. (263, whalesalad)

Fixed

* An issue where the max_age parameter to Callbacks was being ignored. (240, evstratbg)
* An issue with delaying pipelines. (264, synweap15)
* An issue where the master process would sometimes hang when stopped. (260, asavoy)
* An issue where the RedisBroker could sometimes prefetch more messages than it was configured to. (262, benekastah)
* The StubBroker now flushes its dead letter queue when its flush_all method is called. (247, CapedHero)
* The RedisBroker now takes the max lua stack size into account. This should fix certain heisenbugs that folks have encountered with that broker. (259, benekastah)

1.7.0

Added

* Generic actors can now be passed custom actor registries. (223, jonathanlintott)
* `--use-spawn` command line argument. (227, 228, jrusso1020)

Changed

* Uncaught exceptions within workers are now logged as errors rather than warnings. (221, th0th)

Page 3 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.