All notable changes to this project will be documented in this file.
Craft 5 only
- Craft 5 compatibility
- composer housekeeping, thanks @markhuot
{note} Upgrading is highly recommended. The previous version did not limit concurrency of queue runners.
ASYNC_QUEUE_CONCURRENCY
defaults to1
now.
- Fixed RateLimiter
- Added tests for RateLimiter / concurrency
- Concurrency of queue runners defaults to
1
now
- Craft 4 support
- PHP 8 syntax
- Added dependency
treeware/plant
- Housekeeping
composer.json
- Added support for
symfony/process:^5.0
- Updated
phpunit/phpunit
- Removed
version
from composer.json - Switched to
psalm
for static analysis
- Catch Exception when trying to count reserved jobs
- Replaced
ProcessPool
withRatelimiter
to limit the number of concurrent queue runners - Clean up: Removed unnecessary doc blocks in favour of type hints
- Decoupled
QueueCommand
formQueueHandler
- Allow custom modifications via
QueueCommand::EVENT_PREPARE_COMMAND
event - Requires
symfony/process: ^4.2.0
- Unit tests
- Utility to perform tests in the Craft CP
- Support for
DISABLE_ASYNC_QUEUE
env var to disable the plugin in certain environments
- Added
symfony/process:^4.0
as a direct dependency - Added logging of
ProcessPool
access
- Changed version constraint to
craftcms/cms: ^3.0.0
- Process pool implemented to restrict concurrency
- Concurrency configurable via
ASYNC_QUEUE_CONCURRENCY
ENV var (default: 2) - Lifetime of pool configurable via
ASYNC_QUEUE_POOL_LIFETIME
ENV var (default: 3600 seconds)
- Prevent multiple background processes
- No
nice
on Windows - changed log level from
info
totrace
- Requires Craft 3.0.0-RC1
- Requires Craft 3.0.0-RC1 (alias)
- Now we use Symfony\Component\Process\PhpExecutableFinder (thanks @phoob)
- Craft::info() logger 2x
- Added AFTER_PUSH listener
- Removed custom Queue class
- Initial release