Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Epic: fourth audit, of the third round's changes

已关闭
#320 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
25/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
go
领域
testing, tooling

调研方向

Start with the listed audit findings #321–#330 and reproduce the corresponding cases in a scratch module, as the issue says was done for the earlier findings. Read each linked issue for its scope and expected behavior; the epic itself does not specify implementation files or tests. Done means resolving the selected finding and confirming its behavior with a focused regression check.

由索引模型根据 Issue 内容生成。

描述

A fourth, focused audit of the third round's changes (#302–#319, unreleased). Each finding was reproduced in a scratch module.

P0

  • #321 shrink: a nested module can build a different copy of a module whose path is in the judged range. This is the nested-module counterpart of #284

P2

  • #322 shrink: a nested module's own go.work is ignored. This is a regression from #319
  • #323 analyzer: an external test package inherits its folder's non-Go files. This is a regression from #308

P3

  • #324 analyzer: the folder's non-Go check counts files the go command never builds
  • #325 survey, inspect: a cgo package that does not compile is named by "could not import C". This is a gap in #312
  • #326 baseline: keep shrink's entries of a package shrink left unjudged, and say so. This is a gap in #304
  • #327 shrink, survey: name a failed package by one line, everywhere. This is a gap in #312
  • #328 release: check-version.sh warns on GNU grep and misreads a two-digit major. This is a gap in #314
  • #329 baseline: separate the -merge messages for a file that cannot be read and one that cannot be parsed
  • #330 docs: the design notes still name evidenceStructOf

Checked and found sound

  • The internal/typeparams port matches x/tools v0.52.0 line by line. Everything dropped is unreachable code or debug code.
  • pointer.Sets handles receiver type parameters, instantiated constraints, and a type parameter whose constraint names another type parameter.
  • go test -race ./internal/shrink/... passes. The parallel nested loads (#305) give byte-identical output across runs.
  • shrink -fix on x/tools v0.52.0 (631 reports, 263 fixes) and x/net v0.61.0 (61 reports, 27 fixes): go vet passes for linux, darwin and windows, and a second run is stable.
  • -merge (#304) handles test variants, x_test packages, -o targets and nested-config targets.

The performance comparison of v0.22.0 against main is still running. Its findings will be added here.

主要语言
Go
星标
42
派生
1
平均合并
57 分钟
30 天内合并 PR
135

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

相似的 Issue

更多 Go Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。