Skip to content

Conversation

@parthea
Copy link
Contributor

@parthea parthea commented Dec 16, 2025

chore: librarian update image pull request: 20251216T191850Z

…prod/images-prod/python-librarian-generator@sha256:b8058df4c45e9a6e07f6b4d65b458d0d059241dd34c814f151c8bf6b89211209
@parthea parthea requested review from a team as code owners December 16, 2025 19:18
@product-auto-label product-auto-label bot added the size: l Pull request size is large. label Dec 16, 2025
@product-auto-label product-auto-label bot added the api: firestore Issues related to the googleapis/python-firestore API. label Dec 16, 2025
@gemini-code-assist
Copy link

Summary of Changes

Hello @parthea, 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 primarily focuses on updating the librarian code generation image and refining the generated client libraries. A notable change is the complete removal of the ExecutePipeline RPC method and its related components from the google-cloud-firestore library, simplifying its interface. The update also includes significant internal cleanup, such as the renaming of a key configuration file, reordering of imports, and the removal of post-generation fixup scripts, all contributing to a more robust and streamlined code generation process.

Highlights

  • Librarian Image Update: The core python-librarian-generator image used for code generation has been updated to a new SHA (b8058df4c45e9a6e07f6b4d65b458d0d059241dd34c814f151c8bf6b89211209), indicating a refresh of the underlying generation tool.
  • Code Generation Tool Refactoring: The owlbot.py configuration file, typically associated with OwlBot, has been renamed to librarian.py, suggesting a shift or rebranding in the code generation tooling or process.
  • Removal of ExecutePipeline RPC: The ExecutePipeline RPC method, along with its associated client methods, transports, types, and tests, has been entirely removed from the google-cloud-firestore library. This significantly streamlines the API surface.
  • Removal of ExplainStats and Pipeline Types: Related to the ExecutePipeline removal, the ExplainStats and Pipeline types, including their respective files, have been deleted from the google-cloud-firestore library.
  • Code Generation Cleanup and Standardization: Numerous 'DO NOT EDIT' comments have been removed from generated files, and import statements have been reordered across various firestore_admin_v1 and firestore_v1 files, indicating a cleaner and more standardized generation output. Conversely, 'DO NOT EDIT' comments were added to noxfile.py and setup.py, suggesting these files are now also managed by the generation process.
  • Removal of Fixup Scripts: Two Python scripts (fixup_firestore_admin_v1_keywords.py and fixup_firestore_v1_keywords.py) previously used to fix keyword arguments in generated code have been removed, implying that the new generation process no longer requires these post-processing steps.
  • Python and Dependency Version Checks: New Python version and google.protobuf dependency version checks have been added to google/cloud/firestore_bundle/__init__.py, enhancing compatibility and environment validation.
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.

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 is an automated update from the librarian tool, which updates the generator image. This has resulted in widespread changes across the codebase. Notably, the execute_pipeline feature has been removed, which is a significant breaking change that should be communicated to users. Other changes include updates to import ordering, code style, removal of generator-specific comments, and the addition of version checks. My review identifies a couple of minor issues introduced during this automated process: a typo in a comment and a docstring formatting regression. Otherwise, the changes appear to be the intended result of the generator update.

``TargetChange.target_ids`` are undefined. Therefore,
clients should provide a target ID instead of relying on the
server to assign one.
``TargetChage.target_ids`` are undefined. Therefore, clients

Choose a reason for hiding this comment

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

medium

There is a typo in the comment. TargetChage should be TargetChange.

Suggested change
``TargetChage.target_ids`` are undefined. Therefore, clients
``TargetChange.target_ids`` are undefined. Therefore, clients

Comment on lines 558 to 560
- For EUCLIDEAN, COSINE: WHERE distance <=
distance_threshold
- For DOT_PRODUCT: WHERE distance >= distance_threshold

Choose a reason for hiding this comment

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

medium

The formatting of this docstring has been degraded, making it harder to read. The code examples have lost their backticks and are now split across lines. Please restore the previous formatting for better readability.

Suggested change
- For EUCLIDEAN, COSINE: WHERE distance <=
distance_threshold
- For DOT_PRODUCT: WHERE distance >= distance_threshold
- For EUCLIDEAN, COSINE:
``WHERE distance <= distance_threshold``
- For DOT_PRODUCT: ``WHERE distance >= distance_threshold``

daniel-sanche
daniel-sanche previously approved these changes Dec 16, 2025
daniel-sanche
daniel-sanche previously approved these changes Dec 16, 2025
@parthea parthea enabled auto-merge (squash) December 16, 2025 20:11
@parthea parthea changed the title chore: librarian update image pull request: 20251216T191850Z feat(gapic): support mTLS certificates when available Dec 16, 2025
@daniel-sanche daniel-sanche changed the title feat(gapic): support mTLS certificates when available chore: update gapic generated code Dec 16, 2025
@parthea parthea merged commit cdd926a into main Dec 16, 2025
23 of 24 checks passed
@parthea parthea deleted the librarian-20251216T191850Z branch December 16, 2025 21:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api: firestore Issues related to the googleapis/python-firestore API. size: l Pull request size is large.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants