golang/go

x/tools/go/analysis/passes/modernize: add testingsetenv analyzer

Open

#77.735 geöffnet am 22. Feb. 2026

Auf GitHub ansehen
 (13 Kommentare) (4 Reaktionen) (1 zugewiesene Person)Go (19.008 Forks)batch import
FeatureRequestProposalToolshelp wanted

Repository-Metriken

Stars
 (133.883 Stars)
PR-Merge-Metriken
 (Keine gemergten PRs in 30 T)

Beschreibung

Proposal Details

Add a new analyzer that replaces manual environment variable save/restore with t.Setenv (Go 1.17+).

// Before
defer os.Setenv("GOOS", os.Getenv("GOOS"))
os.Setenv("GOOS", f[0])

// After
t.Setenv("GOOS", f[0])

Conditions

  • Pattern: defer os.Setenv(key, os.Getenv(key)) followed by os.Setenv(key, value)
  • defer must precede os.Setenv (defer args are evaluated immediately)
  • Within test function, before any t.Parallel() call
  • Go 1.17+

Similar to testingcontext analyzer.

Contributor Guide