- Support PHP 8.1
- Support PHP 8
- Fix redis service not being overridden
- Fix version comparison in Lumen
- Support Laravel 8
- Add an artisan command
shadowfax:task
to create task class
- Fix the file download
- Send big response by HTTP chunk
- Add the
AppPoppedEvent
, it will be dispatched after the Laravel Application is popped from the pool - Add before cleaner
- Add pagination cleaner
- Fix close the WebSocket connection
- Fix the WebSocket "handshake" event handler (#37)
- Fix the Facade. Clear all of the resolved instance in Facade when popping Laravel Application (#35)
- Fix the default value of the configuration option
controllers
- Add controllers cleaner
- Change the controller server configuration key
controller
tocontroller_server
- The cleaners under the
app/Cleaners/
directory will be loaded automatically even if theapp/Cleaners/
is not added to thecleaners
configuration
- Add cleaner support
- Add cleaner and WebSocket handler scaffold commands
- Fix RedisManager constructor in lower Laravel versions (#17)
- Fix override redis manager (#14)
- Add
HuangYi\Shadowfax\HasEventDispatcher
trait - Add
HuangYi\Shadowfax\Events\AppPushingEvent
, it will be dispatched when recycling app instance
- Remove driver support detection when creating database connection pool
- Fix determine if a connection is a pool connection
- Remove
server.task_worker_num
andserver.task_enable_coroutine
fromshadowfax.yml
- Add
db_pools
andredis_pools
toshadowfax.yml
- Add redis connection pool support
- Fix rebind abstracts named with class name
- Add mysql connection pool support
- Add Swoole server instance for starting event
- Add component to extend Shadowfax
- Add singleton method for container
- Add support for WebSocket handshake event
- Add
events
configuration option for customizing the events Swoole server listened - Add a new event
HuangYi\Shadowfax\Events\FrameworkBootstrappedEvent
, it will be dispatched when the Laravel framework bootstrapped
- Remove the WebSocket message configuration option
- Use the return value of
HuangYi\Shadowfax\Contracts\WebSocket\Handler::message()
method first to create the message instance (if any) - Close the WebSocket connection when receiving an invalid message
- Add a default value for the second parameter of JsonMessage constructor
- Add a bootstrap file for phpunit
- Add method
HuangYi\Shadowfax\WebSocket\ConnectionCollection::all()
- Fix
HuangYi\Shadowfax\WebSocket\Connection::close()
- Fix
--watch
option instart
command
- Remove the dev package
huang-yi/swooleunit
- Add priority for listeners
- Register shadowfax services in different environments
- Support more versions for Laravel (5.5 - 5.8)
- Fix
shadowfax:publish
Artisan command in Lumen
- Add a bootstrap file
bootstrap/shadowfax.php
- Add the WebSocket server
- Add the
shadowfax:publish
Artisan command
- Use event dispatcher to dispatch Swoole server events
- Use
shadowfax.yml
as the configuration file (replacedshadowfax.ini
) - Publish the console script
shadowfax
to project root