Skip to content

Require the tagged GCS driver and build the features module in CI - #867

Merged
lennessyy merged 4 commits into
mainfrom
fix/gcs-snippet-deps-and-ci
Aug 14, 2026
Merged

Require the tagged GCS driver and build the features module in CI#867
lennessyy merged 4 commits into
mainfrom
fix/gcs-snippet-deps-and-ci

Conversation

@lennessyy

Copy link
Copy Markdown
Contributor

What

Requires gcsdriver and gcssdk at the newly published v0.1.0, so features/snippets/external_storage/gcs_setup compiles. That package has not built since #866 merged, because its dependencies were left out while the driver was untagged.

Adds a go build ./... step in features/ to the build-go job. CI missed the breakage because it builds the root module, and Go only compiles packages the main package imports, which excludes the snippets tree entirely. go.Dockerfile has the same blind spot. The new step compile-checks all 69 packages in the module.

Note the tagged modules declare go 1.25.4, which raises this module's go directive from 1.24.0. The repository root module is already at 1.25.4.

gcsdriver and gcssdk are published at v0.1.0, so the gcs_setup snippet
can require them properly. That package has not compiled since it
merged, because its dependencies were left out while the driver was
untagged.

CI did not notice. The build-go job builds the root module, and Go only
compiles packages the main package imports, which excludes the whole
snippets tree. The docker build has the same blind spot. Adds a
go build ./... step in features/ so those 69 packages are compile
checked. Reverting the go.mod change makes the new step fail with the
three missing-dependency errors, so it catches the case it is meant to.

The tagged modules declare go 1.25.4, which raises this module's go
directive from 1.24.0. The repository root module is already at 1.25.4.
@lennessyy
lennessyy requested review from a team as code owners August 13, 2026 21:13
The root module requires github.com/temporalio/features/features
through a replace directive, so adding dependencies to features/go.mod
changes the root build list too. Without this, go build -o
temporal-features fails with "updates to go.mod needed".

Verified all four build-go steps locally: the root binary, go test
./cmd, the harness tests, and go build ./... in features.
The first pass ran "go get cloud.google.com/go/storage" with no
version, which picked up v1.64.0 and pulled newer grpc, genproto, and
golang.org/x transitive deps with it. gcssdk v0.1.0 only requires
storage v1.57.2, so letting MVS resolve it keeps the build list closer
to what main already had.

Root go.mod drops from 22 changed lines to 8, and root go.sum from 62
to 14. All four build-go steps still pass.
@lennessyy
lennessyy merged commit 0cd96cb into main Aug 14, 2026
26 checks passed
@lennessyy
lennessyy deleted the fix/gcs-snippet-deps-and-ci branch August 14, 2026 23:19
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