Files
tamabox/.workbuddy/memory/topics/build.md
T
2026-10-21 12:09:28 +08:00

1.4 KiB
Raw Blame History

构建与测试(长版明细)

构建与测试

  • 无 libwebp/GCC:cgo 的 internal/storage/s3.go 挡编译 → overlay 换桩 dev/s3stub/s3_stub.go(-overlay="C:/Users/Tamakyi Gekka/AppData/Local/Temp/tb-webpcheck/overlay.json")。 要检查 s3.go 本身得 tar 复制项目 + go mod edit -replace(overlay 换不了 GOMODCACHE)。
  • 「编译卡死」= proxy.golang.org 不可达。每条 go 命令前 export GOPROXY=https://goproxy.cn,direct GOSUMDB=off GOFLAGS=-mod=mod(go env -w 沙箱失败)。 1C1G 是正式生产环境,别用「沙箱慢」解释超时。
  • DB 测试:DB_TYPE=postgres DB_USER=postgres DB_PASSWORD=15207786347hXPm DB_HOST=127.0.0.1 DB_PORT=5432 (DSN 不带库名,NewTestDB 自建临时库后 DROP)。带 DB 的 go test ./... 全绿。
  • store 方法内用 NewXStore(db.DB),别引用包级单例(测试下 nil panic;FeatureStateOf 有守卫)。
  • ⚠️ 本沙箱起不了 TamaBox web(session 固定 redis,6379 未开,启动 panic)→ HTTP 端到端只能部署后做。 探测端口 200 可能是别的进程,必须看日志确认 Starting web server 且无 panic。
  • ⚠️ 本机 python urllib 不稳定(代理下偶发读超时,curl 正常);python 别用 /tmp (Windows 解析成 C:\tmp,与 MSYS 不通)。PIL 在 ~/.workbuddy/binaries/python/envs/default。