-
Go x/image/font/sfnt 的 UnitsPerEm 是字体内部的抽象单位数量,不是输出图片的字号。本文用 ppem、26.6 定点坐标、Metrics 与 GlyphBounds 拆开定位,让字号、字形边界和画布尺寸各自承担正确职责。
-
go test -run 匹配的是测试标识而不是文件名,未转义斜杠还会表达父子测试层级。本文说明普通片段、完整锚定、子测试选择、包位置、shell 引号与 -list 排查方法,帮助定位为什么目标用例没有命中。
-
Go archive/zip 的 FileHeader.Method 表示 ZIP 条目的压缩方法,不是文件格式。本文区分 Store=0 与 Deflate=8,说明 File.Open 的透明解压和校验、File.OpenRaw 的原始字节边界,并给出未知方法、ZIP64 尺寸和资源关闭的处理建议。
-
Go 私有模块校验和失败要先区分公共校验库访问、仓库认证和真实摘要冲突。本文解释 GOPRIVATE 与显式覆盖,分别给出直连、企业代理配置,并说明为何应保留 go.sum 和不可变版本。
-
Go 的 AddDate 按 Location 的日历规则加一天,DST 切换日可能对应 23 小时或 25 小时;如果业务要固定时长,应使用 Add。本文梳理时区、缺失时间、重复时间和比较持久化边界。
-
Go net/http 的 Cookie 同时提供 RawExpires 和 Expires:前者保留 Set-Cookie 中的原始过期文本,后者是解析后的 UTC 时间。本文用一个小型响应读取示例说明如何读取、判断解析失败,并按日志、兼容处理和业务判断选择字段。
-
Gonum mat.Matrix 的 T 只保证转置语义,不保证复制底层数据。本文用 Dense 和 Transpose 解释共享存储、别名规则,以及需要独立矩阵时的显式复制方式。
-
textproto.Reader.ReadMIMEHeader 会读取以空行结束的 MIME 头,并把以空格或制表符开头的续行并入上一字段。同名字段按出现顺序保留;缺少冒号、首行缩进或非法头字节时返回协议错误。本文给出读取、排错和资源边界的实用写法。
-
runtime.NumGoroutine 返回的是调用时刻仍存在的 goroutine 数量,不是累计创建数。本文说明读数下降的正常原因,并用连续采样与 goroutine profile 区分短时波动和持续堆积。
-
Go 的 net/mail.AddressParser.ParseList 可以把逗号分隔的邮箱地址解析为 []*mail.Address。本文说明普通地址、显示名、带引号逗号和解析错误的处理边界,并比较它与 Header.AddressList 的使用场景。
-
Go net.Dialer 只负责建立连接,成功返回后的 net.Conn 仍由调用方关闭。本文用生命周期日志、goroutine profile、文件描述符趋势和 httptrace 区分连接未关闭、读写卡住与 HTTP 连接池复用,并给出可落地的修复边界。
-
x509.Certificate.SerialNumber 的类型是 *big.Int,直接转 int64 可能溢出,也不适合做统一日志键。本文给出稳定十六进制格式、issuer 与 serial 的组合方式,以及 nil、负值和原始 DER 编码的边界处理。
-
Go Package.Complete 描述包元数据完整状态,不能脱离来源当作当前源码无类型错误的证明。本文区分 Config.Check、错误回调与 MarkComplete,并给出调用方状态设计示例。
-
Participle 内部使用带回溯的递归下降解析器,左递归会让同一产生式在消费输入前再次调用自己。本文用表达式 AST 说明原因,并给出 Primary 加 Tail 的改写方式。
-
Go 的 GOFLAGS 会把已知命令行参数注入到默认行为中,且可能来自当前 shell 或 go env -w 的持久配置。本文用 go test、go list 和 go env 说明它的来源、覆盖顺序与清理方法。