swoole 5.0.2

Coroutine-based concurrency library for PHP

Coroutine-based concurrency library for PHP
- event-driven
- coroutines
- asynchronous non-blocking
- built-in tcp/http/websocket/http2 server
- coroutine tcp/http/websocket client
- coroutine mysql client
- coroutine redis client
- coroutine read/write file system
- coroutine dns lookup
- automatically replace blocking functions to non-blocking
- support IPv4/IPv6/UnixSocket/TCP/UDP
- support SSL/TLS encrypted transmission

License: Apache2.0


- Support for configuring http2 default settings
- Support xdebug under 8.1 or higher
- Refactor curl native to support a curl handle with multiple sockets, such as the curl ftp protocol
- Added $who parameter to Process::setPriority/getPriority
- Added Coroutine\Socket::getBoundCid()
- Adjusted the default value of Coroutine\Socket::recvLine/recvWithBuffer $length parameter to 65536
- Refactor cross-coroutine shutdown feature to make memory release safer and solve the crash problem when a fatal error occurs
- Added socket property for Coroutine\Client, Coroutine\Http\Client, Coroutine\Http2\Client, allow direct operation of socket resources
- Support Http\Server to send empty file to http2 client
- Support graceful restart for Coroutine\Http\Server. When server shuting down, the client connection will no longer be forcibly closed, and only stop listening to new requests
- Added pcntl_rfork pcntl_sigwaitinfo to list of unsafe function, will be closed when coroutine container starts
- Refactor Server process manager with base mode, the behavior of shutdown and reload will be consistent with base or process mode