Skip to content

Conversation

Groxx
Copy link
Member

@Groxx Groxx commented Jul 29, 2025

High level stuff changed:

  • All go.mod and docker stuff points to 1.24
  • go list has made significant changes to what is allowed yet again, so check-gomod-version.sh has major changes, but does the same thing
  • Minor makefile fixes and ensuring go-generate checks versions before misbehaving
    • This is mostly unnecessary until a golang.org/x/tools check is in place, but it's a bit beneficial either way
  • 1.24 cleanup for timer.Stop() draining
  • Upgraded golang.org/x/tools to v0.32.0 to match our internal repos, needed to parse newer libraries / code supported by go 1.24

... and then got stuck on mockery.

We essentially have two options:

  1. migrate to mockery v3
  2. leave mockery, move its mocks over to mockgen

2 seems like it might be much easier, but 1 is worth considering at some point at least.


Mockery-v2 is not compatible with go 1.24, and v3 has fixed that.
Unfortunately, mockery-v3 drops support for our go generate-command-line-flags entirely, and forces us to switch to their config files.

AFAICT that's a good change, and it should let us speed up code generation a lot (by running them as a dedicated pass, rather than in go generate). But it's non-trivial so I've stopped here.

There's a migration guide for whenever someone feels like tackling it: https://vektra.github.io/mockery/v3.5/v3/
We might even consider replacing gowrap with it tbh, it looks like it might be a pretty powerful code generator framework.

@@ -4,7 +4,7 @@ ARG TARGET=server
ARG GOPROXY

# Build Cadence binaries
FROM golang:1.23.4-alpine3.21 AS builder
FROM golang:1.24.5-alpine AS builder

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using 1.24-alpine might be better as new version of 1.24 are released which typically have fewer CVEs.

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.

2 participants