You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The golang 1.25 update turned out into something of an ordeal, so
splitting it up from #3739
to allow for better review.
While everything compiled in 1.25, some tests and CI steps broke.
* Go lint needed to be updated to v2+ to support golang 1.25
* Bumping go vet from v1 to v2 entailed a bunch of CLI changes.
Tried to make those 1-to-1 as much as possible, however:
Go fmt now needs to be invoked separately for golint. We check
go fmt in the CI step right before lint ... so just remove the
go fmt step?
The revive linter flagged a ton of missing comments. But it
seems the linter only applies to the `pm` and `verification`
packages which hardly change. Rather than update those packages,
remove the use of the `revive` linter.
* Some linting step (not sure which one? vet?) now complains
about format string functions being used incorrectly, eg
using a variable in place of a format string literal.
Those were fixed in the code.
* The `rand.Seed` function apparently became a no-op as of
golang 1.24 and that broke most of our tests that use the RNG.
Removed the init() function that sets the seed, and added a
package level RNG context (using the same seed as the old init)
and updated any failing tests to use that context.
Not all uses of the RNG were updated, just ones that broke tests.
The global RNG is safely initialized so we can continue to use it
by default in the code that still uses it without test coverage.
* Fix race condition in discovery uncovered by golang 1.25
0 commit comments