Skip to content

fix(publish): chain build-go after build-c for reliable go generate#381

Merged
DorianZheng merged 3 commits intomainfrom
fix/build-go-wait-for-build-c
Mar 14, 2026
Merged

fix(publish): chain build-go after build-c for reliable go generate#381
DorianZheng merged 3 commits intomainfrom
fix/build-go-wait-for-build-c

Conversation

@DorianZheng
Copy link
Copy Markdown
Member

Summary

  • Chain build-go.yml after build-c.yml via workflow_run trigger
  • Ensures C SDK archives are uploaded to the release before the Go module tag is created
  • Prevents go generate 404 errors when users install immediately after release
  • Read version from Cargo.toml instead of release event context (not available through workflow_run)

Test plan

  • Trigger build-c.yml via workflow_dispatch — verify build-go.yml runs after it completes
  • Verify build-go.yml skips if build-c.yml fails
  • On next release: verify tag sdks/go/vX.Y.Z is created after C SDK archives are uploaded

…xist

build-go's tag-go-module job creates the Go module tag that enables
`go get`, but users immediately run `go generate` which downloads
the C SDK archive from the release. If build-c hasn't uploaded yet,
go generate 404s.

Chain build-go after build-c via workflow_run trigger (same pattern
as build-runtime chaining after warm-caches). Tag-go-module now
reads version from Cargo.toml since the release event context isn't
directly available through workflow_run.
The nix crate uses aio_*, timer_*, and mq_* functions that live in
librt on glibc < 2.34 (manylinux_2_28 uses glibc 2.28). Without -lrt,
go test fails with undefined reference errors on Linux.
… in CI

Move all Go SDK source from sdks/go/pkg/boxlite/ to sdks/go/, giving
users a cleaner workflow:

  go get github.com/boxlite-ai/boxlite/sdks/go
  go generate github.com/boxlite-ai/boxlite/sdks/go
  go build ./...

CI now uses `go generate` instead of manual curl/tar to download the
prebuilt C SDK archive, validating the exact end-user workflow.
@DorianZheng DorianZheng merged commit 76e8774 into main Mar 14, 2026
16 checks passed
@DorianZheng DorianZheng deleted the fix/build-go-wait-for-build-c branch March 14, 2026 01:57
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