Closed
Description
This is a follow up to https://go.dev/issue/53781, a deterministic panic that made it into gopls@v0.9.0 in part because a flaky regression test had been skipped, and not un-skipped when the root cause of flakiness was resolved.
We have recently made improvements to several potential sources of flakiness: server shutdown races, invalidation races, and performance. We also have resources to work on flakes that weren't available during the 1.18 push. In light of #53781, we should endeavor to unskip (and further de-flake if necessary) all regression tests that have been unconditionally skipped. This issue tracks that effort:
Currently skipped tests:
- TestQuickFixEmptyFiles: (x/tools/gopls/internal/regtest/diagnostics: TestQuickFixEmptyFiles failing frequently on small/slow builders #48773)
- TestModFileModification (x/tools/gopls:
go mod tidy
cache entry races with file system changes #40269) - TestCreateDependency (x/tools/gopls: adding a missing package does not invalidate missing package errors #54073, newly added)
- TestSumUpdateFixesDiagnostics (x/tools/gopls/internal/regtest/modfile: TestSumUpdateFixesDiagnostics failures with "Unmet: empty diagnostics" #51352)
- Test_Issue38211(x/tools/gopls/internal/regtest: Test_Issue38211 is flaky #44098)
- TestWatchReplaceTargets (x/tools/gopls/internal/regtest/workspace: frequent failures in TestWatchReplaceTargets with ‘Unmet: completed work "diagnosing files changed on disk"’ #50748)
- TestChangePackageName (x/tools/gopls: bad error messages when changing package names #41061)
- TestDeleteModule_Interdependent (x/tools/gopls/internal/regtest: TestDeleteModule_Interdependent flakes due to orphaned file reloading #46375)