release-date: 2023-02-26
成功的秘诀是开始行动。
The secret of getting ahead is getting started.
- New API: Socket->sendFile() (
da2397f
) - New APIs:
Coroutine->getStartTime()
,Coroutine->getEndTime()
(64f516e
) - New Constant: WebSocket::DEFAULT_MASKING_KEY (
72f1920
) - New Config: Introduce autoUnmask config for specific requirements (
56088cc
) - Support use PHP ini to configure async stdio/file hook and async threads (swow.async_threads=4, swow.async_file=1, swow.async_stdio=1 by default) (
0d94d1a
)
- Support get php binary files via php-config (#158) (@sy-records)
- Run update docs ci under swow organization only (#159) (@sy-records)
- Handle empty maskingKey and empty data for WebSocket::unmask() (
3d07a94
) - Skip NULL values when pack headers (
977c54c
) - Add HTTP event-stream case for mixed server example (
923e69e
)
- Fix stream_select() hangs on server for all platforms (#162)
- Fix missing SSL module init (
90ea96c
) - Fix test-extension.php can not run without composer (
329d49d
) - Fix callable memory leak when coroutine allocation failed (
25be041
) - Some fixes for Debugger: Fix
p
andvars
does not work; Fix missingstep_in
command (63a9c84
) - Fix PHP rename() did not work for cross devices (
9903049
) - Fix WebSocket payloadData buffer size (
ee8bc7c
) - Fix Message->addHeader() and add a test for it (
2e51848
)
- Remove API: Socket->setTcpAcceptBalance() (
72e7c44
)
release-date: 2023-01-18
永远不要熄灭心中的火,哪怕别人只看见烟。 Never extinguish the fire in your heart, even if others can only see smoke.
- New README (
b121caa
) - New PHP API:
Coroutine->getSwitches()
,Coroutine::getGlobalSwitches()
(2ef2ac3
) - Add
HttpParser
errno (3365aaa
) (0a8c96b
) - New C APIs: version getters (
f0ce087
)
- Do not always close all connections when closing Server (graceful shutdown)] (
dd00372
) - Optimizations for swow-builder (
2ed5f60
)
- Fix bad arg name of Signal methods (
6041422
)
- Fix va_args memory error (libcat/libcat@
6d08909
) - Fix bad usage of buffer value (libcat/libcat@
6c20f9e
) - Fix curl easy handle exec dead loop with SSL connection (libcat/libcat@
6f5865d
) - Full cURL workaround solution for SSL connection (libcat/libcat@
1e8d176
)
- Remove
Coroutine->getRound()
,Coroutine::getCurrentRound()
(2ef2ac3
)
release-date: 2023-01-03
Swow 是一个专注于并发 I/O 的跨平台协程引擎,它致力于使用最小 C 核心及多数 PHP 代码以支持 PHP 高性能网络编程,具有极佳的扩展性与强大的调试能力,最大化开发者的编程效率。
Swow is a high-performance pure coroutine network communication engine, which is based on PHP and C. It is committed to using the smallest C core and most of the PHP code to support PHP high-performance network programming. Furthermore, it has excellent scalability and powerful debugging capabilities to maximize the programming efficiency of developers.