Go问答技术文章
-
t.TempDir 的清理时机绑定调用它的 testing.T:父测试创建的目录会保留到所有子测试完成,子测试创建的目录只保留到该子测试树结束。本文结合并行子测试说明安全共享、隔离和清理顺序。181 收藏 -
解释 t.Parallel 与进程级环境变量的冲突边界,给出显式配置传递、独立测试资源和 exec.Cmd.Env 子进程隔离方案。115 收藏 -
go test 显示 cached 却没有感知输入文件变化,通常是依赖没有进入测试缓存键。本文说明模块内文件、外部输入和环境变量的处理方法,并给出诊断与 CI 落地方案。174 收藏 -
Go 的 replace 可以替换间接依赖,但它只改变主模块依赖图中的模块内容来源;是否进入图仍由 require 和模块图决定。本文用 MVS、go mod graph 与 go list -m all 给出判断方法。208 收藏 -
Golang · Go问答 | 2天前 | 依赖管理 · go · go work sync go work vendor Go workspace inconsistent vendoring Go依赖同步
Go 多模块工作区出现 inconsistent vendoring 时,关键不是手改 vendor/modules.txt,而是先确认 GOWORK 和 use 范围,再同步工作区构建列表、整理模块依赖并重建 workspace vendor。本文给出可复用的排查、同步和 CI 验证步骤。192 收藏 -
从 go env 确认 GOMODCACHE 实际路径,区分 GOPATH/pkg/mod 与 GOCACHE,再用父目录、属主和最小写入测试定位权限错误,并给出迁移与复查方案。490 收藏 -
用最小配方修复 iter.Seq2[T,error] 的错误返回链,覆盖数据源、转换适配器、消费端与 Pull2 的常见吞错位置。383 收藏 -
iter.Pull 把 push 迭代器转换为 next 与 stop 两个函数。只要没有消费到序列末尾,就必须调用 stop;本文从提前返回、并发误用和 goroutine 观测三个方向定位残留。488 收藏 -
讲清 iter.Pull2 的 next、stop 与外部 Err 查询顺序,用单次键值源示例避免提前退出后的资源泄漏、漏错和并发误用。391 收藏