From b98596574d76838b106d5fb70ef931348c968cff Mon Sep 17 00:00:00 2001 From: Jonathan Bernard Date: Fri, 17 Feb 2023 12:12:13 -0600 Subject: [PATCH] Add find utility method for searching for issues among multiple issue states. --- pit.nimble | 2 +- src/pitpkg/cliconstants.nim | 2 +- src/pitpkg/private/libpit.nim | 8 ++++++++ 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/pit.nimble b/pit.nimble index c57aeae..b1b12f7 100644 --- a/pit.nimble +++ b/pit.nimble @@ -1,6 +1,6 @@ # Package -version = "4.22.0" +version = "4.22.1" author = "Jonathan Bernard" description = "Personal issue tracker." license = "MIT" diff --git a/src/pitpkg/cliconstants.nim b/src/pitpkg/cliconstants.nim index c1e2692..55511e2 100644 --- a/src/pitpkg/cliconstants.nim +++ b/src/pitpkg/cliconstants.nim @@ -1,4 +1,4 @@ -const PIT_VERSION* = "4.22.0" +const PIT_VERSION* = "4.22.1" const USAGE* = """Usage: pit ( new | add) [] [options] diff --git a/src/pitpkg/private/libpit.nim b/src/pitpkg/private/libpit.nim index 2e65ddf..6dfa9e6 100644 --- a/src/pitpkg/private/libpit.nim +++ b/src/pitpkg/private/libpit.nim @@ -385,6 +385,14 @@ proc filter*(issues: seq[Issue], filter: IssueFilter): seq[Issue] = for exclTag in filter.exclTags: result = result.filterIt(it.tags.find(exclTag) < 0) +proc find*( + issues: TableRef[IssueState, seq[Issue]], + filter: IssueFilter + ): seq[Issue] = + + result = @[] + for stateIssues in issues.values: result &= stateIssues.filter(filter) + ### Configuration utilities proc loadConfig*(args: Table[string, Value] = initTable[string, Value]()): PitConfig = let pitrcLocations = @[