Skip to content

perf: check manifests concurrently in scan.Dir - #29

Merged
algomaster99 merged 1 commit into
mainfrom
perf/concurrent-scan-checks
Sep 1, 2026
Merged

perf: check manifests concurrently in scan.Dir#29
algomaster99 merged 1 commit into
mainfrom
perf/concurrent-scan-checks

Conversation

@algomaster99

Copy link
Copy Markdown
Member

Summary

scan.Dir checked each manifest's dependencies sequentially, and each Check is a network round-trip to that ecosystem's resolver. A project with several manifest kinds serialized their resolver timeouts (up to 10s each) into a slower SessionStart hook.

Changes

  • Run each manifest's Check in its own goroutine, guarded by a mutex when appending to findings, then wg.Wait() before sorting.
  • Before/after behavior is unchanged — same findings, same sort order — just gathered concurrently instead of one manifest at a time.

Each manifest's Check is a separate network round-trip to its
resolver, so run them in their own goroutine instead of sequentially
— a project with several manifest kinds would otherwise serialize
their resolver timeouts (10s each) into a slow SessionStart hook.
@algomaster99
algomaster99 merged commit cc489eb into main Sep 1, 2026
2 checks passed
@algomaster99
algomaster99 deleted the perf/concurrent-scan-checks branch September 1, 2026 17:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant