Releases: swoole/swoole-src
Releases Β· swoole/swoole-src
v4.4.12
New API
- Runtime::getHookFlags (#2915) (@limingxinleo)
Enhancement
- Support Websocket Compression on client-side (#2937) (@twose)
- Support compress websocket message by frame (#2937) (@twose)
- Optimized the detect logical of shortname (#2935) (@sy-records)
- Better compression handler (Gzip and Brotli) (#2928) (@twose)
- Reduce memory copy (#2893) (7fc9350) (@hantaohuang) (@twose)
- Accepted connection will inherit the options of server (#2898) (@twose)
- Coroutine\Http\Server support HTTP2 protocol now (5479dbc) (@matyhtf)
- Automatically add Content-Type header when use sendfile (4e62bc5) (@matyhtf)
- Compatibility with Zend preloader (Special thanks to PHP team) (#2899) (@twose)
- Implement RFC-7692 (#2906) (@matyhtf)
- Support PHP error control operators (#2916) (@twose)
- Support socket_send_timeout option for sync client (#2919) (@matyhtf)
- Support NPN (#2900) (@matyhtf)
- Improve HTTP proxy handshake request (#2922) (@twose)
Fixed
- Fixed AIO task num overflow (7038bdc) (@twose)
- Fixed gdbinit, support get backtrace info of current stack (bd033e5) (@twose)
- Fixed Websocket Compression (ca81865) (@matyhtf)
- Fixed compilation failure caused BrotliDecoder (#2925) (@twose)
- Fixed memory error caused by compressing big data (#2928) (@twose)
- Fixed #2890 (start a Process\Pool without onWorkerStart event) (#2892) (@twose)
- Fixed the bug that close the connection in non-current worker (#2891) (@matyhtf)
- Fixed memory error of create socket failure (2948f10) (@matyhtf)
- Fixed missing ssl_host_name of HTTPS proxy (#2904) (@twose)
- Fixed CID-1466865 (#2923) (@Tutanhamon)
v4.4.8
Deprecated
- Move async Swoole\Client to ext-async
Enhancement
- Support Http\Response close (#2861) (@matyhtf)
- Support Process::daemon() redirection of IO (#2871) (@matyhtf)
Fixed
- Fixed random bytes added to response status code (#2856) (@twose)
- Fixed naming conflicts with php gdbinit (2a2447e) (@shiguangqi)
- Fixed build without PCRE JIT on OSX (2a4c447) (@twose)
- Fixed Websocket\Server class entry of property declaration (1f197da) (@twose)
- Fixed coroutine bound error checker of Co\Http\Client (2619cdd) (@twose)
- Fixed gdb debugger in docker (ec81528) (@twose)
- Fixed MySQL close error (#2869) (@twose)
- Fixed Cygwin with process (#2868) (#2876) (@matyhtf)
- Fixed tls_host_name not found (d1968c2) (@twose)
- Fixed SSL renegotiation (#2847) (d8b87eb) (@matyhtf)
- Fixed HTTP2 client empty data (37b12d7) (775aefe) (@twose)
- Fixed send yield hang (#2885) (@matyhtf) (@twose)
- Fixed null fci_cache (#2881) (@twose)
- Fixed server mode on CYGWIN (#2868) (@matyhtf)
- Fixed select null (5e23dd9) (@twose)
- Fixed #2643 #2868 (#2888) (@matyhtf)
v4.4.7
v4.4.6
Enhancement
- Support max_request_grace (#2784) (#2808) (#2809) (@sshymko)
- Add SameSite Cookie (@2815) (@Yurunsoft)
- Support curl_multi_getcontent, CURLOPT_AUTOREFERER for curl hook, add ignore options (#2817) (@2818) (@2819) (@limingxinleo)
- Support CURLOPT_SSLVERSION and CURLINFO_HEADER_OUT (f2b4c93) (@matyhtf)
- AIO thread safe (@matyhtf)
- Optimize numeric type conversion (aa20913) (@twose)
- Compatibly with diseval extension for library (8b7eb16) (@GXhua)
Fixed
- Fixed missing http headers (#2786) (@doubaokun)
- Defensive programming for signal callback (@twose)
- Fixed getProcess memory error (#2801) (@matyhtf)
- Fixed compilation on MacOS (@matyhtf)
- Fixed Coroutine\System methods (97c1444) (@twose)
- Fixed AIO thread task stuck (@matyhtf)
- Fixed HTTP2 HEADER_TABLE_SIZE (@twose)
- Fixed spurious waking of socket (d0b659a) (@matyhtf)
v4.4.5
Enhancement
- Better Reactor (@matyhtf)
- Better AIO (@twose)
- Better Redis (3608f4c) (@twose)
- Handle Empty upload files (#2779) (@sshymko)
- Add File uploads array parser (#2773) (@sshymko)
- Support PURGE (#2754) (#2764) (@sshymko)
- Allow HTTP methods like GETX POSTX PUTX etc (#2772) (@doubaokun)
- Reduce the default max_wait_time to 3 (ed5c838) (@twose)
Fixed
- Fixed AIO memory error (@twose)
- Fixed compilation without zlib (f5a0336) (@twose)
- Fixed timeout param of stream (c827598) (@twose)
- Fixed missing http headers (#2789) (@doubaokun)
- Fixed client type (#2771) (@doubaokun)
v4.4.4
Enhancement
- Perfect array_walk for coroutine (#2740) (@twose)
- Add
Swoole\Constantto replace string (@matyhtf) (@twose) - Add alias
Co::dnsLookupofswoole_async_dns_lookup_coro(42293ef) (@matyhtf) - Expend default HTTP_FORM_KEYLEN to 512 (#2734) (@sshymko)
- Better dns resolver (c6deff1) (@matyhtf)
- Support HTTP PURGE (#2462) (@sshymko)
- Response 400 for bad request (#2751) (@twose)
- Decoupling sockets and reactor (internal) (@twose)
- Add Timer::set / Process->set / Process\Pool->set (@twose)
- Optional hugepage feature support for FreeBSD (#2757) (@devnexen)
Fixed
- Fixed macOS not support extern thread_local () (@matyhtf)
- Fixed SSL dispatch (#2736) (@matyhtf)
- Fixed aio thread num (#2745) (@matyhtf)
- Fixed async_thread (#2747) (@matyhtf)
- Fixed Swoole\Client::select timeout (#2758) (@LeiZhang-Hunter)
- Fixed empty timer (#2749) (@twose)
- Fixed zlib decompression (#2762) (@twose)
v4.4.3
Enhancement
- Continue to maintain the Lock module (@matyhtf)
- Add zpopmin and zpopmax for Redis 5 (#2684) (@ruesin)
- Remove Http\Client global buffer in kernel (@twose)
- Support ppc32/ppc64/s390x arch (#2692) (@matyhtf)
- Support SSL context options for php_stream (#2717) (@twose)
- Support multi-threading (libswoole) (@matyhtf)
- Support SSL shutdown (#2717) (@twose)
Fixed
- Fixed bug: call Request->rawContent/getData after Response->end (b989ba9) (@twose)
- Fixed OpenSSL protocol version check (c89e56f) (@twose)
- Fixed bug: MySQL double free when io error occurred (d62d543) (@twose)
- Fixed Http2 Client null pointer (537557d) (@twose)
- Fixed HTTP2 SSL settings (#2725) (@twose)
- Fixed DNS errno (@matyhtf)
- Fixed mem invalid read with fgets (5dc0670) (@matyhtf)
- Fixed swoole_async_dns_lookup_coro (b9caf5d) (@matyhtf)
- Fixed ManagerStop failed (7977fab) (@matyhtf)
v4.4.2
v4.4.1
Enhancement
- Support send response with non-zero Content-length without body for HEAD request (#2690) (@matyhtf)
- Support
Coroutine::getPcidby a random cid (#2669) (@huanghantao)
Fixed
- Fixed
SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER(#2667) (@twose) - Fixed signal listener (#2675) (@matyhtf)
- Fixed MySQL incompatibility changes (#2674) (@twose)
- Fixed add event after server start (#2673) (@matyhtf)
- Fixed
static_handlercan not decode url (#2676) (@twose) - Fixed task worker warning (#2689) (@Yurunsoft)
- Fixed
Http\Request->rawContent(#2682) (@twose) - Fixed invalid read when
Timer::clearAll(6b0263b) (@matyhtf) - Fixed
Coroutine\Http\Clientsend failed (432259d) (@twose)