swoole 4.6.2

Event-driven asynchronous and concurrent networking engine with high performance for PHP.


Event-driven asynchronous and concurrent networking engine with high performance for PHP.
- event-driven
- coroutine
- asynchronous non-blocking
- multi-thread reactor
- multi-process worker
- multi-protocol
- millisecond timer
- built-in tcp/http/websocket/http2 server
- coroutine tcp/http/websocket client
- coroutine read/write file system
- coroutine dns lookup
- support IPv4/IPv6/UnixSocket/TCP/UDP
- support SSL/TLS encrypted transmission

License: Apache2.0

Changes

New APIs
---
+ Added Http::Request::getMethod() (#3987) (@luolaifa000)
+ Added Coroutine::Socket:recvLine() (#4014) (@matyhtf)
+ Added Socket::readWithBuffer() (#4017) (@matyhtf)

Enhancement
---
+ Improved Response::create() (#3998) (@matyhtf)
+ Supported Coroutine\Redis::hExists return bool with compatibility_mode (swoole/swoole-src@b8cce7c) (@matyhtf)
+ Supported PHP_NORMAL_READ for socket_read (swoole/swoole-src@b1a0dcc) (@matyhtf)

Fixed
---
* Fixed Coroutine::defer coredump in PHP8 (#3997) (@huanghantao)
* Fixed Coroutine::Socket::errCode is not set correctly when using thread context (swoole/swoole-src@004d08a) (@matyhtf)
* Fixed build Swoole error on latest macos (#4007) (@matyhtf)
* Fixed php stream context is nullptr when use md5_file with url (#4016) (@ZhiyangLeeCN)
* Fixed rshutdown deprecated warning when throw exception (#4026) (@huanghantao)

Kernel
---
* Used AIO thread hook stdio instead of coroutine socket (#4002) (@matyhtf)
* Refactor HttpContext (#3998) (@matyhtf)
* Refactor Process::wait() (#4019) (@matyhtf)