Skip to content

Add Python 3.14 to workflow testing matrix#80

Merged
amotl merged 1 commit intomainfrom
chore/py14
Nov 3, 2025
Merged

Add Python 3.14 to workflow testing matrix#80
amotl merged 1 commit intomainfrom
chore/py14

Conversation

@surister
Copy link
Contributor

@surister surister commented Oct 10, 2025

See title.

Summary by CodeRabbit

  • Chores
    • Updated testing workflow to include Python 3.14.
    • Added Python 3.14 to officially supported Python versions.

@coderabbitai
Copy link

coderabbitai bot commented Oct 10, 2025

Walkthrough

The project configuration was updated to add support for Python 3.14. The GitHub Actions workflow matrix and pyproject.toml classifiers now reference Python 3.14 instead of 3.13, preparing the project for the newer Python release.

Changes

Cohort / File(s) Summary
Python 3.14 version support
\.github/workflows/tests\.yml, pyproject\.toml
Updated Python version matrix from 3.13 to 3.14 in the CI workflow; added Python 3.14 to project classifiers

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Poem

🐰 Three-fourteen hops into view,
New Python dreams to pursue,
A version bump, so light and clean,
The easiest change we've ever seen! 🌟

Pre-merge checks and finishing touches

✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title 'Add Python 3.14 to workflow testing matrix' directly and accurately reflects the main changes in the changeset. The modifications include updating the Python version in .github/workflows/tests.yml from 3.13 to 3.14 and adding Python 3.14 to the classifiers in pyproject.toml. The title is concise, clear, and highlights the primary change from the developer's perspective.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/py14

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@amotl amotl changed the title Add Python 3.14 to workflow testing matrix Add Python 3.14 to workflow testing matrix. Update cratedb-about. Nov 3, 2025
@amotl amotl changed the title Add Python 3.14 to workflow testing matrix. Update cratedb-about. Add Python 3.14 to workflow testing matrix Nov 3, 2025
Copy link

@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

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 649e511 and d6b078c.

📒 Files selected for processing (2)
  • .github/workflows/tests.yml (1 hunks)
  • pyproject.toml (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: oci
  • GitHub Check: oci
🔇 Additional comments (1)
.github/workflows/tests.yml (1)

30-33: I need to verify several aspects of the review comment. Let me check the actual pyproject.toml classifiers and Python 3.14 status.

Now let me check the actual project configuration files:

Let me now verify the actual project configuration files:

Let me run a script to verify the actual configuration in the repository:

Address the test matrix coverage gap or document the strategy.

Python 3.14.0 was released on October 7, 2025, so testing this version is timely and appropriate. However, the workflow now tests only Python 3.10 and 3.14, which creates a gap in intermediate versions.

Without access to your pyproject.toml classifiers to confirm which versions are declared as supported, I cannot definitively verify if this test matrix choice aligns with your stated support policy. However, the concern is valid: if you declare support for Python 3.11, 3.12, and 3.13 in classifiers, they should be tested, or the classifiers should be updated to reflect the actual tested versions.

Consider one of these approaches:

  • Expand the test matrix to include intermediate versions if they are declared as supported
  • Update classifiers to reflect only tested versions (3.10, 3.14)
  • Document the test strategy (e.g., "testing endpoints only for cost/speed optimization") in a README or workflow comment

Comment on lines 49 to +50
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
Copy link

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

Classifier addition is properly placed and correctly formatted.

The "Programming Language :: Python :: 3.14" classifier is correctly added and maintains version ordering. Ensure all pinned dependencies (especially fastmcp>=2.13,<2.14, pueblo==0.0.11) are compatible with Python 3.14 before release.

Search the web for the latest compatibility status of the pinned dependencies with Python 3.14:


🌐 Web query:

Are fastmcp 2.13 and pueblo 0.0.11 compatible with Python 3.14?

💡 Result:

Short answer: Not officially — neither package declares Python 3.14 support on PyPI, though both publish py3 wheels that will often install on 3.14.

  • fastmcp 2.13: Requires Python >=3.10 and classifiers list up to Python 3.13 (no 3.14 classifier). [1]
  • pueblo 0.0.11: Requires Python >=3.7 and classifiers list up to Python 3.13 (no 3.14 classifier). [2]

Recommendation: You can try installing them on Python 3.14 (the py3-none-any wheels usually install), but run your test suite — if you hit issues, open an issue with the project with Python 3.14 reproduction steps.

Sources: PyPI fastmcp (classifiers & requires). [1] PyPI pueblo 0.0.11 (classifiers & requires). [2]


Do not add the Python 3.14 classifier yet.

fastmcp 2.13 and pueblo 0.0.11 do not officially declare Python 3.14 support in their PyPI classifiers (both stop at 3.13). While their wheels may install on Python 3.14, adding a 3.14 classifier to this package without official dependency support risks downstream issues. Before adding the classifier, either:

  • Wait for fastmcp and pueblo to officially release 3.14 support, or
  • Run the full test suite on Python 3.14, confirm all tests pass, then open issues upstream with the dependencies requesting 3.14 support
🤖 Prompt for AI Agents
In pyproject.toml around lines 49-50 the Python 3.14 Trove classifier was added
prematurely; remove the "Programming Language :: Python :: 3.14" classifier (or
revert that change) and keep only up to 3.13 until dependencies fastmcp and
pueblo officially declare 3.14 support or you have run the full test suite on
Python 3.14 and confirmed everything passes and/or filed upstream issues
requesting 3.14 compatibility; after that, add the 3.14 classifier only when
dependency support is confirmed.

@amotl amotl merged commit b6c559b into main Nov 3, 2025
10 checks passed
@amotl amotl deleted the chore/py14 branch November 3, 2025 13:35
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