Skip to content

v0.10.1

Choose a tag to compare

@github-actions github-actions released this 22 Sep 23:48
· 32 commits to main since this release
Immutable release. Only release title and notes can be modified.
d5f1ac0

declscope baseline and declscope survey now analyze packages in parallel. Nothing else changes: the rules, the directives, the configuration, the baseline format, the flags and every output are what 0.10.0 gives.

Faster baseline and survey

Both commands already loaded and type-checked packages in parallel, then analyzed them one at a time. The analysis now runs on up to GOMAXPROCS goroutines, one package each.

Target 0.10.0 0.10.1 Change
Go standard library (381 packages), baseline 2.89s 2.20s −24%
Go standard library, survey 2.60s 2.27s −13%
A 94-package application, baseline and survey about 1.75s about 1.7s −1 to −2%

Median of five runs on 12 cores. The gain depends on how much of a run is analysis rather than loading. Where loading dominates, as in most applications, there is little to gain.

The output is byte-identical to a sequential run. Each package is analyzed into its own slot, and the slots are combined in package order, so the order of entries and the first error reported do not depend on scheduling.

declscope ./... and go vet -vettool are unchanged. Their driver already analyzed packages in parallel. inspect analyzes one package, so it is unchanged too.


Full Changelog: v0.10.0...v0.10.1

  • 19d1a20 baseline, survey: analyze packages in parallel