Skip to content

Conversation

@ohmayr
Copy link
Contributor

@ohmayr ohmayr commented Nov 18, 2025

PR created by the Librarian CLI to initialize a release. Merging this PR will auto trigger a release.

Librarian Version: v1.0.0
Language Image: us-central1-docker.pkg.dev/cloud-sdk-librarian-prod/images-prod/python-librarian-generator@sha256:e601da6e29c993e14c52867f2c088dfb841beae618d2a4f1e0f7970a888ab020

google-cloud-spanner: 3.60.0

3.60.0 (2025-11-18)

Features

Bug Fixes

@ohmayr ohmayr requested a review from a team as a code owner November 18, 2025 22:14
@ohmayr ohmayr requested review from a team as code owners November 18, 2025 22:14
@ohmayr ohmayr requested a review from polong-lin November 18, 2025 22:14
@product-auto-label product-auto-label bot added the size: xl Pull request size is extra large. label Nov 18, 2025
@product-auto-label product-auto-label bot added the api: spanner Issues related to the googleapis/python-spanner API. label Nov 18, 2025
@gemini-code-assist
Copy link

Summary of Changes

Hello @ohmayr, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request marks a significant shift in the project's automation infrastructure by transitioning to the Librarian CLI for release management and code generation. Concurrently, it delivers the latest google-cloud-spanner library update, version 3.60.0, which enhances the client with new features like improved observability and autoscaling configurations, alongside critical bug fixes. The changes streamline the development workflow and provide users with an updated, more robust client library.

Highlights

  • Librarian CLI Migration: The project has migrated its release and code generation automation from OwlBot to the Librarian CLI. This involves the removal of several .github and release-please configuration files and the introduction of new Librarian-specific configuration and generation scripts.
  • google-cloud-spanner v3.60.0 Release: This pull request includes the release of google-cloud-spanner version 3.60.0. This new version introduces several features and bug fixes, as detailed in the updated CHANGELOG.md.
  • New Features in Spanner Client: Version 3.60.0 of the Spanner client library adds support for exposing AutoscalingConfig in InstancePartition, enabling OpenTelemetry metrics and tracing by default, and including cloud.region, request_tag, and transaction_tag in span attributes. It also adds support for an experimental host.
  • Bug Fixes and Enhancements: Key bug fixes in this release include the deprecation of the credentials_file argument and configuration of keepAlive time for gRPC TCP connections to improve stability.
  • Development Environment Updates: The noxfile.py has been updated to use Python 3.14 as the default version for development tasks, and documentation configurations (docs/conf.py) have been refreshed, including an update to the copyright year and Sphinx version requirements.
Ignored Files
  • Ignored by pattern: .github/workflows/** (1)
    • .github/workflows/presubmit.yaml
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@ohmayr ohmayr closed this Nov 18, 2025
Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request, created by the Librarian CLI, prepares for the 3.60.0 release of google-cloud-spanner. The changes primarily involve updating version numbers, migrating from OwlBot to the Librarian generation tool, and refreshing configuration files.

My review has identified a few minor issues in the newly generated files:

  • A potential typo in a regex in .librarian/state.yaml that could affect file cleanup.
  • Some redundant code and a minor formatting issue in .librarian/generator-input/setup.py.
  • Unnecessary Unicode string prefixes (u"...") in docs/conf.py for a Python 3+ project.

These are detailed in the review comments. Overall, the automated changes look correct and align with the goal of preparing a new release with updated tooling.

- ^setup.py
- ^testing/constraints-3.8
- ^testing/constraints-3.9
- ^testing/constraints-3.1

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The regex ^testing/constraints-3.1 seems to contain a typo. Given the other constraint files and supported Python versions (e.g., 3.9, 3.10, 3.11, 3.12), this was likely intended to target a more recent Python 3 version, such as 3.10. Please correct this to ensure the correct old constraint files are removed.

      - ^testing/constraints-3.10

"opentelemetry-semantic-conventions >= 0.43b0",
"opentelemetry-resourcedetector-gcp >= 1.8.0a0",
"google-cloud-monitoring >= 2.16.0",
"mmh3 >= 4.1.0 ",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

There's a trailing space in the version specifier for mmh3. While many tools might handle this gracefully, it's best to remove it for correctness and to prevent potential parsing issues.

Suggested change
"mmh3 >= 4.1.0 ",
"mmh3 >= 4.1.0",


url = "https://github.com/googleapis/python-spanner"

package_root = os.path.abspath(os.path.dirname(__file__))

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The package_root variable is redefined here. It was already defined on line 21. This redefinition is redundant and can be removed.

Comment on lines +84 to +86
project = u"google-cloud-spanner"
copyright = u"2025, Google, LLC"
author = u"Google APIs"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The u prefix for strings is unnecessary in Python 3 (this project requires >=3.9), as all strings are Unicode by default. These prefixes can be removed for cleaner code.

Suggested change
project = u"google-cloud-spanner"
copyright = u"2025, Google, LLC"
author = u"Google APIs"
project = "google-cloud-spanner"
copyright = "2025, Google, LLC"
author = "Google APIs"

root_doc,
"google-cloud-spanner.tex",
"google-cloud-spanner Documentation",
u"google-cloud-spanner Documentation",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The u prefix for this string is unnecessary in Python 3, as all strings are Unicode by default. It can be removed for cleaner code.

Suggested change
u"google-cloud-spanner Documentation",
"google-cloud-spanner Documentation",

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api: spanner Issues related to the googleapis/python-spanner API. release:pending size: xl Pull request size is extra large.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants