-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
chore(all): minimum supported version is now go 1.23 #5124
Conversation
No region tags are edited in this PR.This comment is generated by snippet-bot.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi team,
I'm currently reviewing this pull request and will post my feedback in a few minutes. In the meantime, here's a summary of the changes for you and other reviewers to quickly get up to speed:
This pull request, authored by Valeriy-Burlaka, aims to add text generation capabilities to the GenAI SDK samples. The key changes include:
New GenAI SDK Sample Directory: A new directory has been created to house samples for the GenAI SDK.-- [VB 05/02/2025]: This was moved to another PR. This PR focuses only on chores part for the new GenAI SDK.- Go Version Bump: The
go
version has been updated from1.22.0
to1.23.0
to meet the minimum requirements of the GenAI SDK (as per this go.mod file). This change affects nearly allgo.mod
files in the repository. Initial Text Generation Sample and Test: A first code sample demonstrating text generation from a text prompt has been added, along with a corresponding test case. The sample uses thegemini-2.0-flash-001
model and thegenerateWithText
function.- Updated
go.sum
file: Thego.sum
file has been updated to reflect the changes in the dependency versions.
The following table summarizes the changes to go.mod
files:
File | Go Version (Before) | Go Version (After) |
---|---|---|
aiplatform/go.mod |
1.22.0 |
1.23.0 |
appengine/go.mod |
1.22.0 |
1.23.0 |
appengine/go11x/cloudsql/go.mod |
1.22.0 |
1.23.0 |
appengine/go11x/helloworld/go.mod |
1.22.0 |
1.23.0 |
appengine/go11x/tasks/handle_task/go.mod |
1.22.0 |
1.23.0 |
appengine/go11x/warmup/go.mod |
1.22.0 |
1.23.0 |
appengine_flexible/analytics/go.mod |
1.22.0 |
1.23.0 |
appengine_flexible/datastore/go.mod |
1.22.0 |
1.23.0 |
appengine_flexible/go115_and_earlier/go.mod |
1.22.0 |
1.23.0 |
appengine_flexible/helloworld/go.mod |
1.22.0 |
1.23.0 |
appengine_flexible/pubsub/go.mod |
1.22.0 |
1.23.0 |
appengine_flexible/redis/go.mod |
1.22.0 |
1.23.0 |
appengine_flexible/static_files/go.mod |
1.22.0 |
1.23.0 |
appengine_flexible/storage/go.mod |
1.22.0 |
1.23.0 |
appengine_flexible/websockets/go.mod |
1.22.0 |
1.23.0 |
asset/go.mod |
1.22.0 |
1.23.0 |
auth/go.mod |
1.22.0 |
1.23.0 |
automl/go.mod |
1.22.0 |
1.23.0 |
bigquery/go.mod |
1.22.0 |
1.23.0 |
bigtable/go.mod |
1.22.0 |
1.23.0 |
cdn/go.mod |
1.22.0 |
1.23.0 |
cloudsql/mysql/database-sql/go.mod |
1.22.0 |
1.23.0 |
cloudsql/postgres/database-sql/go.mod |
1.22.0 |
1.23.0 |
cloudsql/sqlserver/database-sql/go.mod |
1.22.0 |
1.23.0 |
compute/go.mod |
1.22.0 |
1.23.0 |
compute/quickstart/go.mod |
1.22.0 |
1.23.0 |
container_registry/go.mod |
1.22.0 |
1.23.0 |
datacatalog/go.mod |
1.22.0 |
1.23.0 |
dataflow/go.mod |
1.22.0 |
1.23.0 |
dataproc/go.mod |
1.22.0 |
1.23.0 |
datastore/go.mod |
1.22.0 |
1.23.0 |
dialogflow/go.mod |
1.22.0 |
1.23.0 |
dlp/go.mod |
1.22.0 |
1.23.0 |
docs/go.mod |
1.22.0 |
1.23.0 |
documentai/go.mod |
1.22.0 |
1.23.0 |
endpoints/go.mod |
1.22.0 |
1.23.0 |
eventarc/audit_iam/go.mod |
1.22.0 |
1.23.0 |
eventarc/audit_storage/go.mod |
1.22.0 |
1.23.0 |
eventarc/generic/go.mod |
1.22.0 |
1.23.0 |
eventarc/pubsub/go.mod |
1.22.0 |
1.23.0 |
eventarc/storage_handler/go.mod |
1.22.0 |
1.23.0 |
eventarc/testing/go.mod |
1.22.0 |
1.23.0 |
firestore/go.mod |
1.22.0 |
1.23.0 |
functions/bigtable/go.mod |
1.22.0 |
1.23.0 |
functions/codelabs/gopher/go.mod |
1.22.0 |
1.23.0 |
functions/console_snippets/firebase_auth/go.mod |
1.22.0 |
1.23.0 |
functions/console_snippets/firebase_rtdb/go.mod |
1.22.0 |
1.23.0 |
functions/console_snippets/firestore/go.mod |
1.22.0 |
1.23.0 |
functions/console_snippets/google_analytics/go.mod |
1.22.0 |
1.23.0 |
functions/firebase/hello/go.mod |
1.22.0 |
1.23.0 |
functions/firebase/upper/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/firebase/hellofirestore/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/firebase/remoteconfig/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/firebase/rtdb/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/firebase/upper/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/helloauditlog/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/hellopubsub/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/hellostorage/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/helloworld/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/imagemagick/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/label_gce_instance/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/log/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/ocr/app/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/response_streaming/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/slack/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/tips/go.mod |
1.22.0 |
1.23.0 |
functions/functionsv2/tips/infinite_retries/go.mod |
1.22.0 |
1.23.0 |
functions/go.mod |
1.22.0 |
1.23.0 |
functions/helloworld/go.mod |
1.22.0 |
1.23.0 |
functions/http/go.mod |
1.22.0 |
1.23.0 |
functions/imagemagick/go.mod |
1.22.0 |
1.23.0 |
functions/log/go.mod |
1.22.0 |
1.23.0 |
functions/memorystore/redis/go.mod |
1.22.0 |
1.23.0 |
functions/ocr/app/go.mod |
1.22.0 |
1.23.0 |
functions/security/go.mod |
1.22.0 |
1.23.0 |
functions/slack/go.mod |
1.22.0 |
1.23.0 |
functions/spanner/go.mod |
1.22.0 |
1.23.0 |
functions/tips/go.mod |
1.22.0 |
1.23.0 |
functions/tips/infinite_retries/go.mod |
1.22.0 |
1.23.0 |
functions/typed/greeting/go.mod |
1.22.0 |
1.23.0 |
genai/go.mod |
N/A | 1.23.0 |
getting-started/authenticating-users/go.mod |
1.22.0 |
1.23.0 |
getting-started/background/go.mod |
1.22.0 |
1.23.0 |
getting-started/bookshelf/go.mod |
1.22.0 |
1.23.0 |
getting-started/gce/go.mod |
1.22.0 |
1.23.0 |
getting-started/go.mod |
1.22.0 |
1.23.0 |
getting-started/gopher-run/go.mod |
1.22.0 |
1.23.0 |
getting-started/sessions/go.mod |
1.22.0 |
1.23.0 |
go.mod |
1.22.0 |
1.23.0 |
healthcare/go.mod |
1.22.0 |
1.23.0 |
iam/go.mod |
1.22.0 |
1.23.0 |
iap/go.mod |
1.22.0 |
1.23.0 |
internal/cloudrunci/testingapp/go.mod |
1.22.0 |
1.23.0 |
internal/gomodversiontest/go.mod |
1.22.0 |
1.23.0 |
internal/managedkafka/go.mod |
1.22.0 |
1.23.0 |
jobs/go.mod |
1.22.0 |
1.23.0 |
kms/go.mod |
1.22.0 |
1.23.0 |
language/go.mod |
1.22.0 |
1.23.0 |
logging/go.mod |
1.22.0 |
1.23.0 |
managedkafka/go.mod |
1.22.0 |
1.23.0 |
media/go.mod |
1.22.0 |
1.23.0 |
memorystore/go.mod |
1.22.0 |
1.23.0 |
monitoring/go.mod |
1.22.0 |
1.23.0 |
opentelemetry/instrumentation/app/go.mod |
1.22.0 |
1.23.0 |
opentelemetry/trace/go.mod |
1.22.0 |
1.23.0 |
privateca/go.mod |
1.22.0 |
1.23.0 |
profiler/go.mod |
1.22.0 |
1.23.0 |
profiler/shakesapp/go.mod |
1.22.0 |
1.23.0 |
pubsub/go.mod |
1.22.0 |
1.23.0 |
pubsublite/go.mod |
1.22.0 |
1.23.0 |
routeoptimization/go.mod |
1.22.0 |
1.23.0 |
run/custom-metrics/go.mod |
1.22.0 |
1.23.0 |
run/go.mod |
1.22.0 |
1.23.0 |
run/grpc-ping/go.mod |
1.22.0 |
1.23.0 |
run/grpc-server-streaming/go.mod |
1.22.0 |
1.23.0 |
run/h2c/go.mod |
1.22.0 |
1.23.0 |
run/hello-broken/go.mod |
1.22.0 |
1.23.0 |
run/helloworld/go.mod |
1.22.0 |
1.23.0 |
run/image-processing/go.mod |
1.22.0 |
1.23.0 |
run/jobs/go.mod |
1.22.0 |
1.23.0 |
run/logging-manual/go.mod |
1.22.0 |
1.23.0 |
run/markdown-preview/editor/go.mod |
1.22.0 |
1.23.0 |
run/markdown-preview/renderer/go.mod |
1.22.0 |
1.23.0 |
run/pubsub/go.mod |
1.22.0 |
1.23.0 |
run/sigterm-handler/go.mod |
1.22.0 |
1.23.0 |
run/system_package/go.mod |
1.22.0 |
1.23.0 |
run/testing/go.mod |
1.22.0 |
1.23.0 |
secretmanager/go.mod |
1.22.0 |
1.23.0 |
securitycenter/go.mod |
1.22.0 |
1.23.0 |
servicedirectory/go.mod |
1.22.0 |
1.23.0 |
spanner/go.mod |
1.22.0 |
1.23.0 |
spanner/opentelemetry/go.mod |
1.22.0 |
1.23.0 |
spanner/opentelemetry/tracing/go.mod |
1.22.0 |
1.23.0 |
speech/go.mod |
1.22.0 |
1.23.0 |
storage/go.mod |
1.22.0 |
1.23.0 |
storagetransfer/go.mod |
1.22.0 |
1.23.0 |
tasks/go.mod |
1.22.0 |
1.23.0 |
testing/gimmeproj/go.mod |
1.22.0 |
1.23.0 |
texttospeech/go.mod |
1.22.0 |
1.23.0 |
trace/go.mod |
1.22.0 |
1.23.0 |
translate/go.mod |
1.22.0 |
1.23.0 |
vertexai/batch-predict/go.mod |
1.22.0 |
1.23.0 |
vertexai/chat/go.mod |
1.22.0 |
1.23.0 |
vertexai/context-caching/go.mod |
1.22.0 |
1.23.0 |
vertexai/controlled-generation/go.mod |
1.22.0 |
1.23.0 |
vertexai/embeddings/go.mod |
1.22.0 |
1.23.0 |
vertexai/evaluation/go.mod |
1.22.0 |
1.23.0 |
vertexai/function-calling/go.mod |
1.22.0 |
1.23.0 |
vertexai/gemma2/go.mod |
1.22.0 |
1.23.0 |
vertexai/multimodal-all/go.mod |
1.22.0 |
1.23.0 |
vertexai/multimodal-audio/go.mod |
1.22.0 |
1.23.0 |
vertexai/multimodal-multiple/go.mod |
1.22.0 |
1.23.0 |
vertexai/multimodal-pdf/go.mod |
1.22.0 |
1.23.0 |
vertexai/multimodal-video-with-audio/go.mod |
1.22.0 |
1.23.0 |
vertexai/multimodal-video/go.mod |
1.22.0 |
1.23.0 |
vertexai/multimodal/go.mod |
1.22.0 |
1.23.0 |
vertexai/safety-settings-multimodal/go.mod |
1.22.0 |
1.23.0 |
vertexai/safety-settings/go.mod |
1.22.0 |
1.23.0 |
vertexai/snippets/go.mod |
1.22.0 |
1.23.0 |
vertexai/stream-multimodality-basic/go.mod |
1.22.0 |
1.23.0 |
vertexai/stream-text-basic/go.mod |
1.22.0 |
1.23.0 |
vertexai/system-instruction/go.mod |
1.22.0 |
1.23.0 |
vertexai/token-count/go.mod |
1.22.0 |
1.23.0 |
videointelligence/go.mod |
1.22.0 |
1.23.0 |
vision/go.mod |
1.22.0 |
1.23.0 |
The author has also added a test file (genai/text_generation/text_generation_test.go
) and a sample implementation file (genai/text_generation/textgen_with_txt.go
).
I'll provide a more detailed review shortly.
Short poem:
Code flows like a stream,
Tests run, a gentle cascade,
Bugs vanish in mist.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This pull request introduces a new sample for text generation using the GenAI SDK. -- [VB 05/02/2025]: This was moved to another PR. This PR focuses only on chores part for the new GenAI SDK.
~~ It also updates the Go version to 1.23.0, which is the minimum required version for the new GenAI SDK. The changes are well-organized and follow the contributing guidelines. Here are a few suggestions for improvement:
Consider adding more details to the example response intextgen_with_txt.go
to illustrate the format of the generated text.Update the checklist in the pull request description to reflect the addition of the new sample directory and API.Add a README file for the newgenai
directory to explain how to run the samples and any prerequisites.
The mass test failure happens because it's still pulling I'm investigating this and would appreciate any hints and pointers: |
59df075
to
393d7a3
Compare
Most of test failures are now gone 🥳 (thanks to #5093 serving as a guidance for which files need to be updated). The remaining failure seems transient?
|
I'm closing this PR because we have to support all of the Go versions that the Cloud client libraries support. See here: https://github.com/googleapis/google-cloud-go?tab=readme-ov-file#go-versions-supported |
@telpirion , I don't understand. Isn't the PR making a step forward to test the library support for |
Description
Bumps the
go
version to1.23.0
because it's the minimum required by the new GenAI SDK. This is needed to support creation of new GenAI sample (e.g., #5125, #5127)Checklist
go test -v ./..
gofmt
go vet