Skip to content

[CHORE] enforce python version compatibility#408

Merged
aarmoa merged 2 commits intomasterfrom
chore/enforce_python_version_compatibility
Mar 3, 2026
Merged

[CHORE] enforce python version compatibility#408
aarmoa merged 2 commits intomasterfrom
chore/enforce_python_version_compatibility

Conversation

@aarmoa
Copy link
Collaborator

@aarmoa aarmoa commented Mar 3, 2026

  • Added cap on max Python supported version to 3.12

Summary by CodeRabbit

  • Chores
    • Patch version 1.13.1 released
    • Updated Python version support constraints to >=3.10,<3.13
    • Expanded continuous integration test matrix to validate compatibility across additional Python versions

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 3, 2026

📝 Walkthrough

Walkthrough

Maintenance release updating the project to version 1.13.1, expanding the CI test matrix to include Python 3.13 and 3.14, restricting the package's Python dependency constraint to <3.13, and updating Black tool target versions to [py310, py311, py312].

Changes

Cohort / File(s) Summary
CI Configuration
.github/workflows/run-tests.yml
Expanded Python test matrix to include Python 3.13 and 3.14 alongside existing versions 3.10–3.12.
Package Configuration
pyproject.toml
Bumped package version from 1.13.0 to 1.13.1, updated Python dependency constraint from ^3.10 to >=3.10,<3.13, and updated Black tool target versions from [py39, py310, py311] to [py310, py311, py312].

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Poem

🐰 A patch release hops into town,
Testing newer Pythons up and down,
Version bumps and constraints align,
Black's targets shine, a design so fine! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title '[CHORE] enforce python version compatibility' is directly related to the main changes: capping Python support at 3.12 and updating version constraints in pyproject.toml.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/enforce_python_version_compatibility

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR aims to enforce Python version compatibility by capping the package’s supported Python versions at 3.12 (i.e., <3.13) and aligning tooling configuration accordingly.

Changes:

  • Bumped project version to 1.13.1.
  • Updated Poetry Python requirement to >=3.10,<3.13 (max Python 3.12).
  • Updated Black formatting targets to include Python 3.12.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
pyproject.toml Caps supported Python versions at <3.13 and aligns Black target versions with 3.10–3.12.
.github/workflows/run-tests.yml Expands the CI test matrix Python versions (currently includes 3.13/3.14).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 10 to 12
matrix:
python: ["3.10", "3.11", "3.12"]
python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
os: [ubuntu-latest, macos-latest]
Copy link

Copilot AI Mar 3, 2026

Choose a reason for hiding this comment

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

The test matrix now includes Python 3.13 and 3.14, but pyproject.toml caps supported versions at <3.13. poetry install will fail for 3.13+ because the project declares it unsupported; either remove 3.13/3.14 from the matrix or update the declared support range (and tooling) to match the CI intent.

Copilot uses AI. Check for mistakes.
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.github/workflows/run-tests.yml:
- Line 11: The CI Python matrix in .github/workflows/run-tests.yml currently
includes "3.13" and "3.14" which conflict with the package constraint in
pyproject.toml (python = ">=3.10,<3.13"); update the python matrix (the python:
[ ... ] entry) to match supported versions—e.g., ["3.10","3.11","3.12"]—or
alternatively relax the pyproject.toml python constraint if you intend to
support 3.13/3.14; ensure the python matrix and the pyproject.toml python field
are consistent.

ℹ️ Review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 98260f7 and f6220b1.

⛔ Files ignored due to path filters (1)
  • poetry.lock is excluded by !**/*.lock
📒 Files selected for processing (2)
  • .github/workflows/run-tests.yml
  • pyproject.toml

strategy:
matrix:
python: ["3.10", "3.11", "3.12"]
python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

cat -n .github/workflows/run-tests.yml | head -20

Repository: InjectiveLabs/sdk-python

Length of output: 624


🏁 Script executed:

cat -n pyproject.toml | grep -A 5 -B 5 "python\s*="

Repository: InjectiveLabs/sdk-python

Length of output: 435


CI matrix includes unsupported Python versions—Poetry install will fail for 3.13 and 3.14

Line 11 tests Python 3.13 and 3.14, but pyproject.toml restricts support to python = ">=3.10,<3.13". The poetry install step will fail for those two jobs on both OS runners.

Proposed fix
-        python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
+        python: ["3.10", "3.11", "3.12"]
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
python: ["3.10", "3.11", "3.12"]
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/run-tests.yml at line 11, The CI Python matrix in
.github/workflows/run-tests.yml currently includes "3.13" and "3.14" which
conflict with the package constraint in pyproject.toml (python =
">=3.10,<3.13"); update the python matrix (the python: [ ... ] entry) to match
supported versions—e.g., ["3.10","3.11","3.12"]—or alternatively relax the
pyproject.toml python constraint if you intend to support 3.13/3.14; ensure the
python matrix and the pyproject.toml python field are consistent.

@aarmoa aarmoa merged commit 9569c6c into master Mar 3, 2026
14 checks passed
@aarmoa aarmoa deleted the chore/enforce_python_version_compatibility branch March 3, 2026 16: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.

2 participants