Skip to content

chore(sqlalchemy-spanner): update Python version to 3.10#16913

Draft
chalmerlowe wants to merge 2 commits intomainfrom
chore/update-python-version-sqlalchemy-spanner
Draft

chore(sqlalchemy-spanner): update Python version to 3.10#16913
chalmerlowe wants to merge 2 commits intomainfrom
chore/update-python-version-sqlalchemy-spanner

Conversation

@chalmerlowe
Copy link
Copy Markdown
Contributor

@chalmerlowe chalmerlowe commented May 1, 2026

This PR updates sqlalchemy-spanner to establish Python 3.10 as the minimum supported version, dropping support for Python 3.9 and below.

Changes

  • Configuration: Updated setup.py and noxfile.py to require Python 3.10+ and remove references to Python 3.7, 3.8, and 3.9.
  • Cleanup: Removed dead code in noxfile.py that was skipping Python 3.7.

Blocking

This PR is blocked by PR #16910

@chalmerlowe chalmerlowe requested a review from a team as a code owner May 1, 2026 13:06
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 removes support for Python 3.7, 3.8, and 3.9 from the noxfile.py and setup.py configurations, while updating the minimum required version to 3.10. The reviewer noted that modifications to shared configurations should ideally be handled through universal updates across all packages rather than piecemeal. Additionally, a suggestion was made to include Python 3.13 and 3.14 in the setup.py classifiers to ensure consistency with the versions defined in the test suite.

ALL_PYTHON.extend(["3.7"])
SYSTEM_TEST_PYTHON_VERSIONS = ["3.12"]
SYSTEM_COMPLIANCE_MIGRATION_TEST_PYTHON_VERSIONS = ["3.8", "3.12", "3.14"]
SYSTEM_COMPLIANCE_MIGRATION_TEST_PYTHON_VERSIONS = ["3.12", "3.14"]
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.

medium

Changes to shared configurations, like Python version lists in noxfiles, should be applied consistently across all relevant packages in a dedicated, universal change rather than piecemeal in individual pull requests.

References
  1. Changes to shared configurations should be applied consistently across all relevant packages in a dedicated, universal change.

Comment on lines 65 to 67
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
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.

medium

Changes to shared configurations, such as supported Python version classifiers, should be applied consistently across all relevant packages in a dedicated, universal change rather than piecemeal in individual pull requests.

Suggested change
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
References
  1. Changes to shared configurations should be applied consistently across all relevant packages in a dedicated, universal change.

@chalmerlowe chalmerlowe added this to the Drop support for 3.7-3.9 milestone May 1, 2026
@parthea
Copy link
Copy Markdown
Contributor

parthea commented May 1, 2026

Switching to draft until presubmits are green

@parthea parthea marked this pull request as draft May 1, 2026 15:53
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.

2 participants