googleapis / google-api-go-client

Auto-generated Google APIs for Go.
https://pkg.go.dev/google.golang.org/api
BSD 3-Clause "New" or "Revised" License
3.95k stars 1.11k forks source link

deps: remove forced dependency on main google-cloud-go module #2559

Open noahdietz opened 4 months ago

noahdietz commented 4 months ago

We need to force a dependency on the cloud.google.com/go main module to ensure that the module is resolved unambiguously. The issue encountered in #2543 and present in #2552 (see below) is odd though because we have other dependencies with newer, unambiguous dependencies on this module. These should win out during dep resolution, but they aren't for some reason.

Forcing a direct dep on the module resolves the ambiguity but is not an ideal solution.

/root/go/pkg/mod/cloud.google.com/go/auth@v0.3.0/internal/internal.go:31:2: ambiguous import: found package cloud.google.com/go/compute/metadata in multiple modules:
    cloud.google.com/go v0.26.0 (/root/go/pkg/mod/cloud.google.com/go@v0.26.0/compute/metadata)
    cloud.google.com/go/compute/metadata v0.3.0 (/root/go/pkg/mod/cloud.google.com/go/compute/metadata@v0.3.0) (compile)
quartzmo commented 4 months ago

we have other dependencies with newer, unambiguous dependencies on this module

Can you explicitly document what these are?

noahdietz commented 4 months ago

we have other dependencies with newer, unambiguous dependencies on this module

Can you explicitly document what these are?

At HEAD before forcing the dep:

$ go mod graph | grep ' cloud.google.com/go@'

cloud.google.com/go/compute@v1.20.1 cloud.google.com/go@v0.110.2
cloud.google.com/go/compute@v1.24.0 cloud.google.com/go@v0.112.0
google.golang.org/genproto@v0.0.0-20240227224415-6ceb2ff114de cloud.google.com/go@v0.112.0
google.golang.org/genproto@v0.0.0-20240125205218-1f4bbc51befe cloud.google.com/go@v0.112.0
cloud.google.com/go/accesscontextmanager@v1.8.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/aiplatform@v1.60.0 cloud.google.com/go@v0.112.0
cloud.google.com/go/apigateway@v1.6.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/apigeeregistry@v0.8.3 cloud.google.com/go@v0.111.0
cloud.google.com/go/appengine@v1.8.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/artifactregistry@v1.14.7 cloud.google.com/go@v0.111.0
cloud.google.com/go/asset@v1.17.2 cloud.google.com/go@v0.112.0
cloud.google.com/go/assuredworkloads@v1.11.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/automl@v1.13.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/baremetalsolution@v1.2.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/batch@v1.8.0 cloud.google.com/go@v0.111.0
cloud.google.com/go/beyondcorp@v1.0.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/bigquery@v1.59.1 cloud.google.com/go@v0.112.0
cloud.google.com/go/certificatemanager@v1.7.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/channel@v1.17.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/cloudbuild@v1.15.1 cloud.google.com/go@v0.111.0
cloud.google.com/go/clouddms@v1.7.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/contactcenterinsights@v1.13.0 cloud.google.com/go@v0.111.0
cloud.google.com/go/container@v1.31.0 cloud.google.com/go@v0.112.0
cloud.google.com/go/containeranalysis@v0.11.4 cloud.google.com/go@v0.112.0
cloud.google.com/go/datacatalog@v1.19.3 cloud.google.com/go@v0.111.0
cloud.google.com/go/datafusion@v1.7.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/datalabeling@v0.8.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/dataplex@v1.14.2 cloud.google.com/go@v0.112.0
cloud.google.com/go/dataproc/v2@v2.4.0 cloud.google.com/go@v0.111.0
cloud.google.com/go/datastore@v1.15.0 cloud.google.com/go@v0.110.7
cloud.google.com/go/datastream@v1.10.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/deploy@v1.17.1 cloud.google.com/go@v0.111.0
cloud.google.com/go/dialogflow@v1.49.0 cloud.google.com/go@v0.112.0
cloud.google.com/go/documentai@v1.25.0 cloud.google.com/go@v0.112.0
cloud.google.com/go/domains@v0.9.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/edgecontainer@v1.1.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/errorreporting@v0.3.0 cloud.google.com/go@v0.105.0
cloud.google.com/go/eventarc@v1.13.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/filestore@v1.8.1 cloud.google.com/go@v0.111.0
cloud.google.com/go/firestore@v1.14.0 cloud.google.com/go@v0.110.2
cloud.google.com/go/functions@v1.16.0 cloud.google.com/go@v0.111.0
cloud.google.com/go/gkebackup@v1.3.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/gkehub@v0.14.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/gkemulticloud@v1.1.1 cloud.google.com/go@v0.111.0
cloud.google.com/go/iam@v1.1.6 cloud.google.com/go@v0.112.0
cloud.google.com/go/ids@v1.4.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/lifesciences@v0.9.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/logging@v1.9.0 cloud.google.com/go@v0.110.8
cloud.google.com/go/longrunning@v0.5.5 cloud.google.com/go@v0.112.0
cloud.google.com/go/managedidentities@v1.6.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/memcache@v1.10.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/metastore@v1.13.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/monitoring@v1.18.0 cloud.google.com/go@v0.112.0
cloud.google.com/go/networkconnectivity@v1.14.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/networkmanagement@v1.9.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/networksecurity@v0.9.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/notebooks@v1.11.3 cloud.google.com/go@v0.111.0
cloud.google.com/go/optimization@v1.6.3 cloud.google.com/go@v0.111.0
cloud.google.com/go/orchestration@v1.8.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/osconfig@v1.12.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/pubsub@v1.36.1 cloud.google.com/go@v0.112.0
cloud.google.com/go/pubsublite@v1.8.1 cloud.google.com/go@v0.110.0
cloud.google.com/go/recommendationengine@v0.8.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/redis@v1.14.2 cloud.google.com/go@v0.111.0
cloud.google.com/go/resourcemanager@v1.9.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/retail@v1.16.0 cloud.google.com/go@v0.112.0
cloud.google.com/go/run@v1.3.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/security@v1.15.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/securitycenter@v1.24.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/shell@v1.7.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/spanner@v1.57.0 cloud.google.com/go@v0.112.0
cloud.google.com/go/speech@v1.21.1 cloud.google.com/go@v0.111.0
cloud.google.com/go/storagetransfer@v1.10.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/talent@v1.6.6 cloud.google.com/go@v0.111.0
cloud.google.com/go/texttospeech@v1.7.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/tpu@v1.6.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/translate@v1.10.1 cloud.google.com/go@v0.112.0
cloud.google.com/go/video@v1.20.4 cloud.google.com/go@v0.111.0
cloud.google.com/go/videointelligence@v1.11.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/vision/v2@v2.8.0 cloud.google.com/go@v0.112.0
cloud.google.com/go/vmmigration@v1.7.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/vmwareengine@v1.1.1 cloud.google.com/go@v0.111.0
cloud.google.com/go/vpcaccess@v1.7.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/webrisk@v1.9.5 cloud.google.com/go@v0.111.0
cloud.google.com/go/workflows@v1.12.4 cloud.google.com/go@v0.111.0
google.golang.org/grpc@v1.19.0 cloud.google.com/go@v0.26.0
google.golang.org/grpc@v1.23.0 cloud.google.com/go@v0.26.0
codyoss commented 2 weeks ago

We should be able to remove this without issue once we remove open census as a dep. That is what is causing us issues today. Per debug.md we can do this anytime after Dec 2, 2024.