Releases: dereuromark/cakephp-queue
6.6.1
Improvements
- Display duration of each job in the job overview.
- Allow adding helpers to view builder of Email tasks
6.6.0
Improvements
Allow configuration of serializing strategy:
- Object (default for BC) using legacy
serialize()
- JSON using
json_encode()
- Any custom one implementing the
SerializerInterface
'Queue' => [
...
'serializerClass' => \Queue\Utility\JsonSerializer::class,
'serializerConfig' => [...],
],
Added new MailerTask
specifically for sending reusable emails using Mailer
objects, but without passing through actual objects.
Instead, the class string (FQCN) is passed only together with config.
This allows it to work with JSON strategy and even in between updates of the server (as passed objects could fail to be "unserialized").
$data = [
'class' => TestMailer::class,
'action' => 'testAction',
'vars' => [...],
];
$queuedJobsTable->createJob('Queue.Mailer', $data);
Added same JSON safe strategy for EmailTask
and deprecated the object ways here only to be used with legacy ObjectSerializer.
$data = [
'class' => Message::class,
'settings' => $settings,
];
$queuedJobsTable->createJob('Queue.Email', $data);
The benefit of JSON serializing is:
- Less payload (data vs full object).
- More resilient after updates for non finished tasks: object can fail to unserialize if different, data can be handled with migration if needed.
- Easier to debug and modify (e.g. for local dev/testing).
6.5.0
Improvements
Added AddFromBackendInterface
to allow listing only possible tasks in GUI.
Some tasks that can be added (implementing AddInterface
) require arguments and can as such only be executed from CLI.
With the new interface, this can now be differentiated.
6.4.4
Fixes
Fixed Migration OldTaskFinder
for upgrading from v5 to v6.
6.4.3
Fixes
Removed deprecation introduced in 6.4.2
6.4.2
Fixes
Fixed markJobDone()
to add valid 1
(100%) value and added validation for expected 0...1
range.
6.4.1
Fixes
Reverted BC breaks.
6.4.0
Improvements
- CakePHP 4.3+ and PHP 7.4+ now
- Added DI container support by @LordSimal in #327
- Fixed deprecations by @LordSimal in #326
Full Changelog: 6.3.2...6.4.0
6.3.2
Fixes
- Fixing Error on SQLSERVER related to Datediff by @PauloPeres in #322
Full Changelog: 6.3.1...6.3.2