Backward compatibility Break
- Removed the maximum limit of session id, never repeat (#3879) (@matyhtf)
- Disabled unsafe function when use Coroutine, including pcntl_fork/pcntl_wait/pcntl_waitpid/pcntl_sigtimedwait (#3880) (@matyhtf)
- Enabled coroutine hook by default (#3903) (@matyhtf)
Remove
Deprecated
New APIs
- Supported setPriority/getPriority (#3876) (@matyhtf)
- Supported native-curl hook (#3863) (@matyhtf) (@huanghantao)
- Supported object style callback parameters for Server, off by default (#3888) (@matyhtf)
- Supported ext-sockets hook (#3898) (@matyhtf)
- Supported duplicate header (#3905) (@matyhtf)
- Supported SSL sni (#3908) (@matyhtf)
- Supported hook stdio (#3924) (@matyhtf)
- Supported capture_peer_cert option for stream_socket (#3930) (@matyhtf)
- Added Http\Request::create/parse/isCompleted (#3938) (@matyhtf)
- Added Http\Response::isWritable (db56827) (@matyhtf)
Enhancement
- All time accuracy of Server changed from int to double (#3882) (@matyhtf)
- Added poll EINTR check for swoole_client_select (#3909) (@shiguangqi)
- Added coroutine deadlock detect (#3911) (@matyhtf)
- Supported closing the connection in another process with server base mode (#3916) (@matyhtf)
- Optimized send to worker from master, reduced memory copy (#3910) (@huanghantao) (@matyhtf)
Fixed
- Pop Coroutine::Channel data when channel is closed (960431d) (@matyhtf)
- Fixed memory error when use JIT (#3907) (@twose)
- Fixed port->set() dtls compile error (#3947) (@Yurunsoft)
- Fixed connection_list error (#3948) (@sy-records)
- Fixed ssl verify (#3954) (@matyhtf)
- Clear all columns when incr and decr (#3956) (@matyhtf) (@sy-records)
- Fixed failed to compile with LibreSSL 2.7.5 (#3962) (@matyhtf)
- Fixed undefined constant CURLOPT_HEADEROPT and CURLOPT_PROXYHEADER (swoole/library#77) (@sy-records)