From cba5d86737c3bfd8e7d1061273f20934049788f7 Mon Sep 17 00:00:00 2001 From: Daniel Lipovetsky Date: Wed, 16 Dec 2020 11:59:37 -0800 Subject: [PATCH] Fix action/List.Run to skip the latest release filter if ListSuperseded is set If superseded releases should be returned, then do not filter for only the latest releases, because the latest releases exclude superseded releases, by definition. Previously, the logic was: if _only_ superseded releases should be included, then do not filter for only the latest releases. That is incorrect; for example, when _all_ releases were requested, only the latest releases would be returned. Signed-off-by: Daniel Lipovetsky --- pkg/action/list.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkg/action/list.go b/pkg/action/list.go index ebbc56b01..a49fc67cd 100644 --- a/pkg/action/list.go +++ b/pkg/action/list.go @@ -172,10 +172,10 @@ func (l *List) Run() ([]*release.Release, error) { return results, nil } - // by definition, superseded releases are never shown if - // only the latest releases are returned. so if requested statemask - // is _only_ ListSuperseded, skip the latest release filter - if l.StateMask != ListSuperseded { + // If superseded releases should be returned, then do not filter for only + // the latest releases, because the latest releases exclude superseded + // releases, by definition. + if (l.StateMask & ListSuperseded) == 0 { results = filterLatestReleases(results) }