Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

storage, spanner, bigtable: dependency upgrades broken. #11344

Open
tritone opened this issue Dec 23, 2024 · 2 comments
Open

storage, spanner, bigtable: dependency upgrades broken. #11344

tritone opened this issue Dec 23, 2024 · 2 comments
Assignees
Labels
api: bigtable Issues related to the Bigtable API. api: spanner Issues related to the Spanner API. api: storage Issues related to the Cloud Storage API. priority: p1 Important issue which blocks shipping the next release. Will be fixed prior to next release. type: bug Error or flaw in code with unintended results or allowing sub-optimal usage patterns.

Comments

@tritone
Copy link
Contributor

tritone commented Dec 23, 2024

Client

storage, spanner, and bigtable

Environment

any

Code and Dependencies

go get -u cloud.google.com/go/storage

Summary

Updating dependencies via go get fails with the following:

$ go get -u cloud.google.com/go/storage
go: cloud.google.com/go/storage imports
        google.golang.org/grpc/xds/googledirectpath imports
        google.golang.org/grpc/internal/xds/bootstrap imports
        github.com/envoyproxy/go-control-plane/envoy/config/core/v3: ambiguous import: found package github.com/envoyproxy/go-control-plane/envoy/config/core/v3 in multiple modules:
        github.com/envoyproxy/go-control-plane v0.13.1 (/Users/6004148/.local/share/go/pkg/mod/github.com/envoyproxy/go-control-plane@v0.13.1/envoy/config/core/v3)
        github.com/envoyproxy/go-control-plane/envoy v1.32.2 (/Users/6004148/.local/share/go/pkg/mod/github.com/envoyproxy/go-control-plane/envoy@v1.32.2/config/core/v3)

Bigtable and spanner modules also have github.com/envoyproxy/go-control-plane as an indirect dependency and so also fail for the same reason.

This was caused by envoyproxy/go-control-plane#714 which split the module into submodules. This was released today in https://github.com/envoyproxy/go-control-plane/releases/tag/envoy%2Fv1.32.2 . An issue has been filed on the repo here: envoyproxy/go-control-plane#1074

Workaround

The bad release can be excluded from your go.mod as follows:

go mod edit --exclude=github.com/envoyproxy/go-control-plane@v0.13.2

This should unblock things for the immediate term.

We will need the issue to be fixed in envoyproxy/go-control-plane, and then we'll do a new release of the affected modules in google-cloud-go in order to fully resolve the issue.

@tritone tritone added the triage me I really want to be triaged. label Dec 23, 2024
@tritone tritone self-assigned this Dec 23, 2024
@tritone tritone added type: bug Error or flaw in code with unintended results or allowing sub-optimal usage patterns. priority: p1 Important issue which blocks shipping the next release. Will be fixed prior to next release. api: bigtable Issues related to the Bigtable API. api: storage Issues related to the Cloud Storage API. api: spanner Issues related to the Spanner API. and removed triage me I really want to be triaged. labels Dec 23, 2024
tritone added a commit to tritone/storage-shared-benchmarking that referenced this issue Dec 27, 2024
Includes fix for another dependency issue,
googleapis/google-cloud-go#11344
tritone added a commit to googleapis/storage-shared-benchmarking that referenced this issue Dec 27, 2024
jcscottiii added a commit to GoogleChrome/webstatus.dev that referenced this issue Dec 30, 2024
This updates all of the go modules.

I had to manually run these workarounds for the first time before make go-update and make go-tidy would work:
- googleapis/google-cloud-go#11283 (comment)
- googleapis/google-cloud-go#11344
github-merge-queue bot pushed a commit to GoogleChrome/webstatus.dev that referenced this issue Dec 30, 2024
This updates all of the go modules.

I had to manually run these workarounds for the first time before make go-update and make go-tidy would work:
- googleapis/google-cloud-go#11283 (comment)
- googleapis/google-cloud-go#11344
github-merge-queue bot pushed a commit to GoogleChrome/webstatus.dev that referenced this issue Dec 30, 2024
This updates all of the go modules.

I had to manually run these workarounds for the first time before make go-update and make go-tidy would work:
- googleapis/google-cloud-go#11283 (comment)
- googleapis/google-cloud-go#11344
@valerian-roche
Copy link

Hey, this PR attempts to solve this issue, but I do not know how to validate whether it will work, given the number of import layers within the google go repositories and my limited understanding of go get -u behavior.
Is anyone with more understanding able to review it?

@BrennaEpp
Copy link
Contributor

Hey, this PR attempts to solve this issue, but I do not know how to validate whether it will work, given the number of import layers within the google go repositories and my limited understanding of go get -u behavior. Is anyone with more understanding able to review it?

Hi @valerian-roche, @codyoss from our team reviewed that PR. We can validate from the Storage side once released

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: bigtable Issues related to the Bigtable API. api: spanner Issues related to the Spanner API. api: storage Issues related to the Cloud Storage API. priority: p1 Important issue which blocks shipping the next release. Will be fixed prior to next release. type: bug Error or flaw in code with unintended results or allowing sub-optimal usage patterns.
Projects
None yet
Development

No branches or pull requests

3 participants