Kitex v0.3.0 版本发布
Feature
- [#366, #426 ] 功能(client): 客户端支持预热操作
- [#395 ] 功能(mux): 连接多路复用支持优雅关闭
- [#399 ] 功能(protobuf): 定义 fastpb protocol API 并在编解码模块对应支持
Optimise
- [#402 ] 优化(connpool): 导出 pkg/remote/connpool 里的 getCommonReporter
- [#389 ] 优化(rpcinfo):填充由 defaultCodec 解码得到的 rpcinfo 中缺失的 Invocation().PackageName, Invocation().ServiceName and Config().TransportProtocol 字段
Bugfix
- [#413 ] 修复(mux): 在 NetpollMux transHandler 中设置 sendMsg的PayloadCodec,以修复泛化请求编码报错问题issue #411
- [#406 ] 修复(grpc): 修复 http2 framer 的读写逻辑,例如避免对端无法及时收到 framer
- [#398 ] 修复(utils):修复了 Dump() 接口无法 dump 出 ring 里所有数据的 bug
- [#428 ] 修复(trans):当写入失败时,关闭连接以避免内存泄漏
- [#340 ] tool(protobuf): 重新设计并实现 Protobuf 生成代码,不使用反射完成编解码,当前仅支持 proto3
Chore
- [#396 ] chore: 用 bytedance/gopkg 里的 xxhash3 替换掉 cespare/xxhash
- [#400 ] chore: 升级 workflow 的 go 版本到 1.18
- [#407 ] chore: 单独增加文件对 grpc 源码使用做声明
Test
- [#401 ] test: 补充 kitex/server 的单测
- [#393 ] test: 补充 pkg/remote/bound package 单测
- [#403 ] test: 补充 netpollmux package 单测
- [#401 ] test: 补充 klog package 单测
- [#392 ] test: 补充 utils package 单测
- [#373, #432, #434 ] test: 补充 gRPC transport 部分的单测,单测覆盖率提升到 76%
- [#424 ] test: 补充 transmeta 实现 handler 的单元测试
Dependency Change
- github.com/cloudwego/netpoll: v0.2.0 -> v0.2.2
- github.com/bytedance/gopkg: 20210910103821-e4efae9c17c3 -> 20220413063733-65bf48ffb3a7