From 0a11e1289a64be4e5d71ecbd46f6aa2578960e9c Mon Sep 17 00:00:00 2001 From: Stefan Haller Date: Sat, 17 Oct 2026 12:14:56 +0200 Subject: [PATCH] Discard the error of Pipeline.Wait explicitly in a test TestClosingAPipelinesOutputBringsItDown receives the error of Pipeline.Wait from a channel and ignores it. errcheck v1.30.0 reports such a receive as an unchecked error. golangci-lint 2.15.0 comes with this errcheck version, and the next commit bumps to it. The test ignores the error on purpose. It only checks that Wait returns, and the error depends on the platform. Make that explicit by discarding the error in the goroutine, and use the channel only to signal that Wait has returned. Co-Authored-By: Claude Opus 5.5 (1M context) --- pkg/commands/oscommands/pipeline_test.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/pkg/commands/oscommands/pipeline_test.go b/pkg/commands/oscommands/pipeline_test.go index a14902cf4..fdf8b9475 100644 --- a/pkg/commands/oscommands/pipeline_test.go +++ b/pkg/commands/oscommands/pipeline_test.go @@ -112,8 +112,14 @@ func TestClosingAPipelinesOutputBringsItDown(t *testing.T) { assert.NoError(t, reader.Close()) - done := make(chan error, 1) - go func() { done <- pipeline.Wait() }() + // Only whether Wait returns matters here, not its error. If a write into a + // closed pipe raises a signal, the last command dies of it and Wait reports + // that; otherwise the command exits normally. + done := make(chan struct{}) + go func() { + _ = pipeline.Wait() + close(done) + }() select { case <-done: