swoole 4.4.13RC1

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 API
---
+ Built-in Connection Pool ([examples](https://github.com/swoole/library/tree/master/examples)) ([doc](https://wiki.swoole.com/wiki/page/p-library.html)) (@twose)

Enhancement
---
* Support websocket compression on Coroutine\Http\Server (#2943) (@twose)
* Support CURLOPT_PUT, CURLOPT_INFILE, CURLOPT_INFILESIZE (#2954) (@twose)
* Add error info for bind error (@LeiZhang-Hunter) (@twose) (#2972)
* Update error info if socket call failed (it will not warn anymore if not necessary) (1e9b8cbb) (@twose)
* Make library submodule (@twose)

Fixed
---
* Fixed gdbinit in docker (missing symbol) (d46dc2d7 (@twose)
* Fixed compression in POST request (#2947) (@twose)
* Fixed compatibility of Websocket->push method (ac7dbcbc) (@twose)
* Fixed $output result inconsistency (Yurunsoft) (#2955)
* Fixed Coroutine::fread (#2958) (@matyhtf)
* Fixed Coroutine\Server can not exit normally #2837 (#2962) (@twose)
* Fixed memory leak in HTTP2\Server (#2964) (@twose)
* Fixed unsafe_event (#2970) (@matyhtf)
* Fixed illegal call after server start (#2977) (@twose)
* Fixed WebSocket\Frame can not enable mask (#2982) (#2983) (@twose)
* Fixed memory leak of Process callback (898894a7) (@twose)
* Fixed case where minfd is never updated (#2985)
* Fixed HTTP2 module is always enable (3925e212) (@twose)
* Fixed HTTP2 context double free (#2987) (f4cdff1b) (@twose)
* Fixed string comparison (#2988) (97c6c425) (9e5eae63) (@twose)
* Fixed HTTP2 pipeline (#2993) (@twose)
* Fixed coroutine context has been destroyed (#2991) (@twose)

Kernel
---
* Refactor swoole_(get|set)_object to the way of extending zend_object (more stable and faster) (#2966) (@twose)
* Support Github Actions (@twose) (@matyhtf)