Swoole v4.5.3 版本发布
新增 API
- 增加
Swoole\Process\ProcessManager
(swoole/library#88f147b) (@huanghantao) - 增加 ArrayObject::append, StringObject::equals (swoole/library#f28556f) (@matyhtf)
- 增加 Coroutine::parallel (swoole/library#6aa89a9) (@matyhtf)
- 增加 CoroutineBarrier (swoole/library#2988b2a) (@matyhtf)
增强
- 增加 usePipelineRead 来支持 http2 client streaming (#3354) (@twose)
- http 客户端下载文件时,在接受数据前不创建文件 (#3381) (@twose)
- http client 支持
bind_address
和bind_port
配置 (#3390) (@huanghantao) - http client 支持
lowercase_header
配置 (#3399) (@matyhtf) Swoole\Server
支持tcp_user_timeout
配置 (#3404) (@huanghantao)Coroutine\Socket
增加 event barrier 来减少协程切换 (#3409) (@matyhtf)- 为特定的 swString 增加
memory allocator
(#3418) (@matyhtf) - cURL 支持
__toString
(swoole/library#38) (@twose) - 支持直接在 WaitGroup 构造函数中设置
wait count
(swoole/library#2fb228b8) (@matyhtf) - 增加
CURLOPT_REDIR_PROTOCOLS
(swoole/library#46) (@sy-records) - http1.1 server 支持 trailer (#3485) (@huanghantao)
- 协程 sleep 时间小于 1ms 将会 yield 当前协程 (#3487) (@Yurunsoft)
- http static handler 支持软连接的文件 (#3569) (@LeiZhang-Hunter)
- 在 Server 调用完 close 方法之后立刻关闭 WebSocket 连接 (#3570) (@matyhtf)
- 支持 hook stream_set_blocking (#3585) (@Yurunsoft)
- 异步 HTTP2 server 支持流控 (#3486) (@huanghantao) (@matyhtf)
- 释放 socket buffer 在 onPackage 回调函数执行完 (#3551) (@huanghantao) (@matyhtf)
修复
- 修复 WebSocket coredump, 处理协议错误的状态 (#3359) (@twose)
- 修复 swSignalfd_setup 函数以及 wait_signal 函数里的空指针错误 (#3360) (@twose)
- 修复在设置了 dispatch_func 时候,调用
Swoole\Server::close
会报错的问题 (#3365) (@twose) - 修复
Swoole\Redis\Server::format
函数中 format_buffer 初始化问题 (#3369) (@matyhtf) (@twose) - 修复 MacOS 上无法获取 mac 地址的问题 (#3372) (@twose)
- 修复 MySQL 测试用例 (#3374) (@qiqizjl)
- 修复多处 PHP8 兼容性问题 (#3384) (#3458) (#3578) (#3598) (@twose)
- 修复 hook 的 socket write 中丢失了 php_error_docref, timeout_event 和返回值问题 (#3383) (@twose)
- 修复异步 Server 无法在
WorkerStart
回调函数中关闭 Server 的问题 (#3382) (@huanghantao) - 修复心跳线程在操作 conn->socket 的时候,可能会发生 coredump 的问题 (#3396) (@huanghantao)
- 修复 send_yield 的逻辑问题 (#3397) (@twose) (@matyhtf)
- 修复 Cygwin64 上的编译问题 (#3400) (@twose)
- 修复 WebSocket finish 属性无效的问题 (#3410) (@matyhtf)
- 修复遗漏的 MySQL transaction 错误状态 (#3429) (@twose)
- 修复 hook 后的
stream_select
与 hook 之前返回值行为不一致的问题 (#3440) (@Yurunsoft) - 修复使用
Coroutine\System
来创建子进程时丢失SIGCHLD
信号的问题 (#3446) (@huanghantao) - 修复
sendwait
不支持 SSL 的问题 (#3459) (@huanghantao) - 修复
ArrayObject
和StringObject
的若干问题 (swoole/library#44) (@matyhtf) - 修复 mysqli 打印错误消息时错别字的问题 (swoole/library#45) (@sy-records)
- 修复当设置
open_eof_check
后,Swoole\Client
无法获取正确的errCode
的问题 (#3478) (@huanghantao) - 修复 MacOS 上 atomic->wait()/wakeup()的若干问题 (#3476) (@Yurunsoft)
- 修复
Client::connect
连接拒绝的时候,返回成功状态的问题 (#3484) (@matyhtf) - 修复 alpine 环境下 nullptr_t 没有被声明的问题 (#3488) (@limingxinleo)
- 修复 HTTP Client 下载文件的时候,double-free 的问题 (#3489) (@Yurunsoft)
- 修复
Server
被销毁时候,Server\Port
没释放导致的内存泄漏问题 (#3507) (@twose) - 修复 MQTT 协议解析问题 (318e33a) (84d8214) (80327b3) (efe6c63) (@GXhua) (@sy-records)
- 修复
Coroutine\Http\Client->getHeaderOut
方法导致的 coredump 问题 (#3534) (@matyhtf) - 修复 SSL 验证失败后,丢失了错误信息的问题 (#3535) (@twose)
- 修复 README 中,
Swoole benchmark
链接错误的问题 (#3536) (@sy-records) (@santalex) - 修复在
HTTP header/cookie
中使用CRLF
后导致的header
注入问题 (#3539) (#3541) (#3545) (chromium1337) (@huanghantao) - 修复 issue #3463 中提到的变量错误的问题 (#3547) (chromium1337) (@huanghantao)
- 修复 pr #3463 中提到的错别字问题 (#3547) (@deminy)
- 修复协程 WebSocket 服务器 frame->fd 为空的问题 (#3549) (@huanghantao)
- 修复心跳线程错误判断连接状态导致的连接泄漏问题 (#3534) (@matyhtf)
- 修复
Process\Pool
中阻塞了信号的问题 (#3582) (@huanghantao) (@matyhtf) - 修复
SAPI
中使用 send headers 的问题 (#3571) (@twose) (@sshymko) - 修复
CURL
执行失败的时候,设置了错误的code
和message
的问题 (swoole/library#1b6c65e) (@sy-records) - 修复当调用了
setProtocol
方法后,swoole_socket_coro
accept coredump 的问题 (#3591) (@matyhtf)
内核
- 使用 C++风格 (#3349) (#3351) (#3454) (#3479) (#3490) (@huanghantao) (@matyhtf)
- 增加
Swoole known strings
来提高PHP
对象读属性的性能 (#3363) (@huanghantao) - 多处代码优化 (#3350) (#3356) (#3357) (#3423) (#3426) (#3461) (#3463) (#3472) (#3557) (#3583) (@huanghantao) (@twose) (@matyhtf)
- 多处测试代码的优化 (#3416) (#3481) (#3558) (@matyhtf)
- 简化
Swoole\Table
的int
类型 (#3407) (@matyhtf) - 增加
sw_memset_zero
,并且替换bzero
函数 (#3419) (@CismonX) - 优化日志模块 (#3432) (@matyhtf)
- 多处 libswoole 重构 (#3448) (#3473) (#3475) (#3492) (#3494) (#3497) (#3498) (#3526) (@matyhtf)
- 多处头文件引入重构 (#3457) (@matyhtf) (@huanghantao)
- 增加
Channel::count()
和Channel::get_bytes()
(f001581) (@matyhtf) - 增加
scope guard
(#3504) (@huanghantao) - 增加 libswoole 覆盖率测试 (#3431) (@huanghantao)
- 增加 lib-swoole/ext-swoole MacOS 环境的测试 (#3521) (@huanghantao)
- 增加 lib-swoole/ext-swoole Alpine 环境的测试 (#3537) (@limingxinleo)

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
Swoole v4.4.20 版本发布
由于还存在大部分用户依旧在使用 v4.4.x 的版本,我们决定延长 v4.4.x 分支的维护周期,修复在主干版本发现的会导致 v4.4.x 版本产生错误的 BUG,同时会有专门的 Release Manager 负责 v4.4.x 分支的版本发布,直到用户平稳过度到新版本。 v4.4.20,这是一个 BUG 修复版本, 没有任何向下不兼容改动 修复 修复在设置了 dispatch_func 时候,调用Swoole\Server::close会报错的问题 (#3365) (@twose) 修复Swoole\Redis\Server::format函数中 format_buffer 初始化问题 (#3369) (@matyhtf) (@twose) 修复 MacOS 上无法获取 mac 地址的问题 (#3372) (@twose) 修复 MySQL 测试用例 (#3374) (@qiqizjl) 修复异步 Server 无法在WorkerStart回调函数中关闭 Server 的问题 (#3382) (@huanghantao) 修复遗漏的 MySQL transaction 错误状态 (...
-
下一篇
Electron 10.1.1 发布,跨平台桌面应用开发工具
Electron 10.1.1现已发布,主要更新内容如下: Fixes 修复了在 macOS 上的对话框中设置的过滤器具有不确定顺序的问题。#25192 修复了在禁用 Web 安全性的情况下创建多个共享同一会话的 WebContent 时的网络权限错误。#25178 修复了在 Windows 上最大化时无框架的以下问题*修复了自动隐藏在顶部位置时无法访问的任务栏的问题 修复 1px 扩展到辅助监视器的问题 修复某些分辨率下 1px 溢出到任务栏的情况 修复了4k 分辨率下窗口顶部的白线。#25216 Other Changes 将 Chromium 更新为 85.0.4183.93。#25188 Unknown 解决了单击通知将不再按预期将其关闭的问题。#25246 更新说明:https://github.com/electron/electron/releases/tag/v10.1.1
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- MySQL8.0.19开启GTID主从同步CentOS8
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2全家桶,快速入门学习开发网站教程
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Dcoker安装(在线仓库),最新的服务器搭配容器使用
- SpringBoot2配置默认Tomcat设置,开启更多高级功能