forked from coleifer/huey
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGELOG
98 lines (76 loc) · 3.97 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
Changelog
=========
v1.2.2
------
Contains small bugfix for an earlier bugfix meant to prevent time.sleep() from
being called with a negative time interval.
v1.2.0
------
Removed the metadata APIs added in 1.1.0, as they seemed poorly-designed and
altogether a decent idea terribly implemented. Perhaps something I'll revisit,
but which should be easy to implement as a third-party library using the events
APIs.
* `AsyncData` is renamed to `TaskResultWrapper`.
* `Huey.result()` is a new method that provides the result of a task, given a
task ID.
* Fixed a handful of bugs related to the error serialization.
* Change the default consumer log handler from RotatingFileHandler to the
vanilla FileHandler class.
v1.1.2
------
I've added a new API for fetching a task's result given on the task's ID. You
can now call `huey.result(task_id)` and retrieve the result if the task has
finished executing. Additionally, the [Huey.result](https://huey.readthedocs.io/en/latest/api.html#Huey.result)
method accepts the same parameters as [AsyncData.get](https://huey.readthedocs.io/en/latest/api.html#AsyncData.get),
allowing you to block for results, specify a timeout, etc.
There is also a new parameter on the above methods, ``preserve=False``. By
default, the result store will delete a task result once it has been read. Specifying
``preserve=True`` ensures the data is not removed.
v1.1.1
------
This is a small release with a couple minor bugfixes.
* Fixed task metadata serialization bug. #140
* Small cleanup to event iterator storage implementation.
* Updated [getting started documentation](https://huey.readthedocs.io/en/latest/getting-started.html)
to reflect changes in the 1.x APIs.
[View changes](https://github.com/coleifer/huey/compare/1.1.0...1.1.1)
v1.1.0
------
* Big changes to simplify the way ``Huey`` is instantiated. No changes should
be necessary if already using ``RedisHuey``.
* Refactored the storage APIs and simplified the public interface. There is
now a single object, whereas before there were 4 components (queue, result
store, scheduler and event emitter).
* Added methods for retrieving and introspecting the pending task queue, the
schedule, results, and errors.
* Errors can now be stored, in addition to regular task results.
* Added metadata methods for tracking task execution, errors, task duration,
and more. These will be the building blocks for tools to provide some
insight into the inner-workings of your consumers and producers.
* Many new events are emitted by the consumer, and some have parameters. These
are documented [here](https://huey.readthedocs.io/en/latest/events.html).
v1.0.0
------
What follows is a description of the changes between 0.4.9 and 1.0.0. There are
some backwards-incompatible changes to be aware of as well as new options for
the consumer. Most APIs are the same, however.
Backwards incompatible changes:
* ``huey.djhuey`` moved to ``huey.contrib.djhuey``. You will need to update
any import statements as well as your Django ``INSTALLED_APPS`` setting to
reflect the new module path.
* Redis backend is now the only one available, and the corresponding code moved
from ``huey.backends.redis_backend`` to ``huey.storage``.
* Removed the "RabbitMQ" and "SQLite" queue backends.
* Removed the ``-t`` and ``--threads`` option from the consumer. You should now
use ``-w`` or ``--workers``.
* Removed the ``-p`` and ``--periodic`` no-op options from the consumer. These
are enabled by default so the option had no meaning.
* The ``scheduler-interval`` option is configured using ``-s`` when previously
it was ``-S``. Furthermore, this must be a value between 1 and 60.
* Removed the ``peewee_helpers`` module.
New features:
* The queue consumer now supports multi-process or multi-greenlet execution
models (in addition to multi-threaded, which previously was the only option).
* Added `pending()`, `scheduled()` and `all_results()` methods to the `Huey`
class to allow introspection of the Queue's state at the current moment in
time.