Skip to content

feat(datastore): drop Python 3.7-3.9 support and regenerate#17199

Open
chalmerlowe wants to merge 1 commit into
mainfrom
fix-datastore-FTL-1.32.0
Open

feat(datastore): drop Python 3.7-3.9 support and regenerate#17199
chalmerlowe wants to merge 1 commit into
mainfrom
fix-datastore-FTL-1.32.0

Conversation

@chalmerlowe
Copy link
Copy Markdown
Contributor

@chalmerlowe chalmerlowe commented May 20, 2026

Drops support for Python 3.7, 3.8, and 3.9 and aligns EOL documentation versions accordingly.

Changes

  • Corrected EOL Documentation:
    • README.rst updated based on synthtool revisions to declare Supported Python Versions as >= 3.10, including 3.14 and Unsupported Python Versions as <= 3.9.
    • Cleaned up CONTRIBUTING.rst to remove EOL references, update standard CPython support ranges, align system/sample test run commands to 3.14 (e.g., system-3.14), and update the global Python 3 baseline statement to 3.10.

Copy link
Copy Markdown
Contributor

@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 updates the supported Python versions for the google-cloud-datastore package, dropping support for Python 3.7, 3.8, and 3.9 and setting the new minimum version to 3.10. The documentation and example commands in CONTRIBUTING.rst and README.rst have been updated to reflect these changes. Feedback suggests using a stable Python version (like 3.10) instead of the alpha version 3.14 in documentation examples for system and sample tests to ensure they work reliably for contributors.

Comment thread packages/google-cloud-datastore/CONTRIBUTING.rst Outdated
Comment thread packages/google-cloud-datastore/CONTRIBUTING.rst Outdated
Comment thread packages/google-cloud-datastore/CONTRIBUTING.rst Outdated
@chalmerlowe chalmerlowe marked this pull request as ready for review May 20, 2026 10:51
@chalmerlowe chalmerlowe requested a review from a team as a code owner May 20, 2026 10:51
)
count: 1

- paths: [
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Same feedback as #17200 (comment)

Copy link
Copy Markdown
Contributor Author

@chalmerlowe chalmerlowe May 21, 2026

Choose a reason for hiding this comment

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

Updated synthtool README template to reference 3.10: googleapis/synthtool#2178
Updated librarian to point at new synthtool commit: googleapis/librarian#6111

Copy link
Copy Markdown
Contributor Author

@chalmerlowe chalmerlowe May 21, 2026

Choose a reason for hiding this comment

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

In this case, I would like to push back on deleting datastore-integration.yaml.
The datastore-integration.yaml file is not my addition. It has been in this repo for 3 months and was added by ohmayr. I am simply updating the ruleset in the existing file.

If we want to remove it and/or merge the content with another file, I recommend that be done in a separate PR.

There are at least 13 files in the post-processing directory that are focused on a single package per file and if we want to start merging content or moving things around, I recommend we do so in a controlled and organized manner.


- The feature must work fully on the following CPython versions:
3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13 and 3.14 on both UNIX and Windows.
3.10, 3.11, 3.12, 3.13 and 3.14 on both UNIX and Windows.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Should we move packages/google-cloud-datastore/CONTRIBUTING.rst to a top level /CONTRIBUTING.rst file so we don't need to maintain the same content in all handwritten packages? We may decide to still have packages/google-cloud-datastore/CONTRIBUTING.rst but only include package specific details that aren't part of the root /CONTRIBUTING.rst file.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I agree that this is a good, long term step. I would prefer that we keep this PR focused on one task: generation using 1.32.0 and we relegate work on consolidating CONTRIBUTING.rst in a separate PR in a future sprint.

@chalmerlowe chalmerlowe force-pushed the fix-datastore-FTL-1.32.0 branch from 164e166 to ebb370d Compare May 21, 2026 10:56
@chalmerlowe chalmerlowe marked this pull request as draft May 21, 2026 11:19
Regenerates google-cloud-datastore using the custom v0.14.0 pseudo-version librarian build on top of pristine, up-to-date main.

- Segregates all post-processing EOL warning rules into package-specific datastore-integration.yaml, keeping global configs clean

- Natively drop Python 3.9 support in constraints and python_requires pins using generator 1.32.0

- Correctly generates setup.py with grpcio>=1.44.0 natively, avoiding any version regressions

- Manually updates contributing.rst warning filters and commands to drop Python 3.7-3.9 and bump system/sample tests base to 3.10

- Passes all Nox docker validations (unit, lint, prerelease_deps, core_deps_from_source) cleanly in parallel
@chalmerlowe chalmerlowe force-pushed the fix-datastore-FTL-1.32.0 branch from ebb370d to 6331554 Compare May 21, 2026 21:56
@chalmerlowe chalmerlowe marked this pull request as ready for review May 21, 2026 22:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants