Alanxtl opened a new issue, #3692: URL: https://github.com/apache/dubbo-go/issues/3692
## 背景 dubbo-go 当前依赖图中仍有多项较旧版本,部分来自 gost 的 go.mod,部分直接存在于 dubbo-go/go.mod。需要做一次有边界的依赖升级,优先处理官方 SDK、旧版本和安全/兼容性风险。 本 issue 只处理依赖更新和回归验证,不负责把 API 迁移到标准库。 ## 升级清单 以下版本以 issue 创建时的依赖检查结果为基线,最终版本应通过 go list -m -u 和兼容性验证确认。 ### 重点依赖 | 当前 | 建议 | | --- | --- | | go.etcd.io/etcd/api/v3 v3.5.7 | 与 client/v3 一起升级到稳定且兼容的版本 | | go.etcd.io/etcd/client/v3 v3.5.7 | 优先评估 v3.5.x/v3.6.x,随后评估 v3.7.x;保持 api/client 版本一致 | | github.com/nacos-group/nacos-sdk-go/v2 v2.2.5 | 升级到当前 v2.3.x 稳定版本 | | go.yaml.in/yaml/v4 v4.0.0-rc.6 | 跟进 v4 稳定版本;同时清理不必要的 gopkg.in/yaml.v2 间接依赖 | | go.uber.org/zap v1.21.0 | 升级到当前 v1.28.x | | github.com/sirupsen/logrus v1.9.4 | 升级到当前 v1.10.x,保持现有 logger API | | github.com/shirou/gopsutil/v3 v3.22.2 | 升级到最新 v3 版本;v4 另行做 API 评估 | | github.com/buger/jsonparser v1.2.0 | 如果动态 JSON parser 仍然需要,升级到当前 v1.x;不要在本 issue 中重写 parser | | google.golang.org/grpc v1.64.1 | 与 etcd、Nacos 及 Dubbo transport 一起做兼容性升级 | | golang.org/x/crypto v0.53.0 | 升级到当前兼容版本 | | github.com/mattn/go-isatty v0.0.16 | 升级到当前兼容版本 | 官方项目参考: - etcd client: https://go.etcd.io/etcd/client/v3 - Nacos Go SDK: https://github.com/nacos-group/nacos-sdk-go - go-yaml: https://github.com/yaml/go-yaml - zap: https://github.com/uber-go/zap - gopsutil: https://github.com/shirou/gopsutil - jsonparser: https://github.com/buger/jsonparser ## 实施要求 1. 先分别记录 dubbo-go/go.mod、gost/go.mod 的直接依赖和完整依赖图。 2. 对 etcd 的 api、client 以及相关间接依赖进行成组升级,不要只升级单个模块。 3. 对 grpc、protobuf、x/crypto、x/net、x/sys 等基础依赖,结合上游 SDK 约束统一处理。 4. 执行 go mod tidy,检查是否引入不必要的 indirect 依赖。 5. 对 registry、config center、metadata、remoting、logger、JSON/YAML 配置相关功能做回归。 6. 记录每个升级项的兼容性变化;如果某个依赖无法升级,说明阻塞原因和后续计划。 ## 验收标准 - go test ./... 通过。 - registry、config center、metadata、remoting 相关测试通过。 - etcd、Nacos 的 watcher、重连、超时和认证场景通过。 - logger、YAML 配置、动态 JSON parser 相关测试通过。 - go.mod/go.sum 无不必要的重复版本或旧版本残留。 - 安全扫描和依赖检查不再报告本 issue 覆盖的旧版本。 ## 明确不包含 - github.com/dubbogo/go-zookeeper:ZooKeeper 迁移已经在单独推进,本 issue 不修改它。 - 不在本 issue 中切换日志后端、替换哈希算法或迁移 TaskPool。 - go.uber.org/atomic 和 github.com/pkg/errors 的标准库迁移归入标准库回归 issue #3691。 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
