You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After using coroutine, you can no longer use the traditional connection multiplexing method such as pconnect, otherwise it will generate the problem of multi-coroutine handle the same Socket at the same time (7b1e786) (@shiguangqi)
Enhancement
Coroutine client re-supports full duplex (#2350) (@twosee)
Support for secure cross-coroutine socket close (#2327) (@twosee)
swoole_strerror supports automatic convert system error code and Swoole error code to text, no need to specify parameters (c92f444) (@twosee)
GDB trace tool supports viewing timer and reactor and hashmap information (2beb563) (@shiguangqi)
When MOVED and ASK errors occurred when using Redis cluster, it will be automatically transferred to the corresponding server (#2299) (@windrunner414)
Underlying code optimization, reducing memory copy when receiving packages (@matyhtf)
Now calling Co\Socket->close() will immediately close the fd instead of waiting for the object to be destructed, after closed, use any other API will return a BADF error (consistent with the system API) (7a61963) (@twosee)
Some illegal parameters no longer cause fatal errors but generate a warning, because external parameters are sometimes uncontrollable and there is a certain risk (cd432d3) (@twosee)
API compatibility enhancement after use coroutine mode (consistent with sync mode) (36687e8) (@matyhtf)
Now swoole\src can be used as a C\C++ library at the same time (libswoole)
Fixed
Fixed a possible coredump problem when there were a large number of objects before the extension load (4ddeedb) (@twosee)
Fixed coredump caused by attempting to clear the uninitialized DNS cache (#2288) (@mabu233)
When task_enable_coroutine is enabled, incorrectly calling Server->finish will trigger a fatal error (156ede6) (@twosee)
The php.ini configuration now displays On and Off correctly (instead of 0 and 1) (fe25982) (@twosee)
Fixed the Co::getaddrinfo parameter parser bug (#2273) (@mabu233)
Fixed fd error when using dispatch_func in UDP mode (#2306) (@mabu233)
Fixed the bug that dispatch_func does not work when specifying the function name, optimization for reducing memory copy (2bc49e4) (@twosee)
PHP warnings will no longer be triggered when the task expires (but the underlying log warning of swoole) (54eee5e) (@matyhtf)
Fixed enable coroutine states after process restarts (#2310)
Fixed BUG caused by connection multiplexing in sync client with KEEP mode under certain conditions (4c5728b) (@matyhtf)
Fixed an issue with Atomic multiple wait and wakeup overflows on MacOS (fbccb25) (@twosee)
Fixed the problem of opening the static_handler directory traversal attack risk, this is a convenient debugging feature, please do not use for production (#2323) (@windrunner414)
Fixed unchecked return value of futex_wait system call (#2351) (@junwei-qu)