* Support for multi-queue, multi-cluster configuration. API changes include:
* Adding `cluster` to async_task() parameters and Task model
* Adding argument --name to qcluster command
* Necessary adjustments to Conf and Broker classes
* Some admin improvements
* Add settings.Q_CLUSTER['ALT_CLUSTERS']: q_cluster config overrides for alternative clusters;
Add Conf.CLUSTER_NAME: separate usage from Conf.PREFIX;
QueueAdmin/OrmQ detail page enhanced: now displaying args/kwargs/q_options instead of encrypted payload.
* if `cluster` argument is not set (the default), async_task() and schedule() will be handled by the default cluster; Documentation update.
* Text cleanup
* Documentation update.
* Fix TIMEOUT setting in Windows for non-default cluster
---------
Co-authored-by: Stan Triepels <1939656+GDay@users.noreply.github.com>
* Add the group column to OrmQ admin page
* Add group field to tasks list and search_field
* Add search by name to Schedule admin page
* Limit succesful task history per schedule with SAVE_LIMIT_GROUP config
* Improve ScheduleAdmin list view performance
Co-authored-by: Marc Sabatier <marc@sabatier.online>
* Allows schedule by cluster
* Update docs
* Add example in doc
* Fixes cluster field must be blank
* Adds cluster arg to schedule func
* Adds cluster field in list_display/filter for admin
* Uses Q filter to fetch schedule
* Fixes ref in doc
* Adds tests
* package signing protocol is now set to highest. Tests show this to be about a 35% speed increase and there is increased probability of correctly pickling complex objects.
* also upped the protocol on the result database picklefield.
This might delay a hook slightly, but it makes more sense if you want to perform hook actions on groups since Pre_save the latest member of the group won't be available yet.
* task now takes an optional keyword `group`
* added result_group() and fetch_group()
* added group column to Success admin
* group column in searchable
* added `name` field to Schedules
* Scheduled tasks take schedule name as group
Migrations on existing data would fail because of the old names being longer than the uuid. Keeping the field length at 100 will keep it compatible with existing data.
Removed the squashed migrations cause this will cause dependency problems on existing installations. Every new migration will list the squashed migrations as a dependency. Not a problem for new installations, but will crash on exisitng ones.
The core module was becoming too large.
By splitting it in cluster, monitor and tasks it becomes more manageable. It also reflects the documentation structure.