Skip to content

Add support for python 3.13 + 3.14#491

Merged
mdeyell-valid-mind merged 4 commits intomainfrom
mdeyell/sc-xxx/python314
Mar 24, 2026
Merged

Add support for python 3.13 + 3.14#491
mdeyell-valid-mind merged 4 commits intomainfrom
mdeyell/sc-xxx/python314

Conversation

@mdeyell-valid-mind
Copy link
Copy Markdown
Contributor

@mdeyell-valid-mind mdeyell-valid-mind commented Mar 23, 2026

Pull Request Description

What and why?

Add support for python 3.13 and 3.14.

How to test

poetry env use python3.13
  poetry install --all-extras
  poetry run python -m ipykernel install --user --name validmind-py313 --display-name "ValidMind (Py 3.13)"
  poetry run jupyter lab

I tested this by running the following poorly hacked together snippet on python 3.13 and 3.14


import validmind as vm
import uuid
from validmind.api_client import log_metric
from datetime import datetime, timedelta
import secrets

rand_num = secrets.randbits(53) / (1 << 53) # float in [0,1)
vm.init(
    api_host="http://localhost:5000/api/v1/tracking",
    api_key="",
    api_secret="",
    document="documentation", # requires library >=2.12.0
    model="cmmwm2e6k00ek0ip4iyudr7gs",
)
NUM_DAYS = 10
REFERENCE_DATE = datetime(2024, 1, 1)  # Fixed date: January 1st, 2024
base_date = REFERENCE_DATE - timedelta(days=NUM_DAYS)
recorded_at = base_date + timedelta(days=1)
metric_name = str(uuid.uuid4()) 
log_metric(
    key=metric_name,
    value=rand_num,
    recorded_at=recorded_at.isoformat()
)

I verified that the metrics appears in the inventory_model_metrics table.

What needs special review?

Dependencies, breaking changes, and deployment notes

Release notes

Add support for python 3.13 and 3.14.

Checklist

  • What and why
  • Screenshots or videos (Frontend)
  • How to test
  • What needs special review
  • Dependencies, breaking changes, and deployment notes
  • Labels applied
  • PR linked to Shortcut
  • Unit tests added (Backend)
  • Tested locally
  • Documentation updated (if required)
  • Environment variable additions/changes documented (if required)

@CLAassistant
Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@mdeyell-valid-mind mdeyell-valid-mind force-pushed the mdeyell/sc-xxx/python314 branch from 70b76d7 to d7a268e Compare March 23, 2026 20:02
@mdeyell-valid-mind mdeyell-valid-mind changed the title Add support for python 3.14 Add support for python 3.13 + 3.14 Mar 23, 2026
@mdeyell-valid-mind mdeyell-valid-mind added enhancement New feature or request python Pull requests that update Python code labels Mar 23, 2026
@mdeyell-valid-mind mdeyell-valid-mind force-pushed the mdeyell/sc-xxx/python314 branch from fdff8ee to 229d86f Compare March 24, 2026 18:27
@github-actions
Copy link
Copy Markdown
Contributor

PR Summary

This PR broadens the supported Python versions across the project by extending the recommended range from Python 3.11 to Python 3.14. The changes include updates to multiple notebook files (and other documentation) and GitHub workflow configuration files to reflect the new range (e.g., "Python 3.8 <= x <= 3.14" instead of 3.11). Additionally, the pyproject.toml has been updated to a new version (2.12.3) with adjustments to dependency constraints for libraries such as numpy, pyarrow, datasets, and others. These dependency rules now include conditional specifiers based on the Python version to ensure compatibility across all supported platforms. Overall, these changes help ensure that the library remains compatible with newer Python versions and that dependency resolution is accurate for those versions.

Test Suggestions

  • Run the full test suite on Python versions 3.8, 3.9, 3.10, 3.11, 3.13, and 3.14 to confirm baseline functionality.
  • Verify that GitHub actions and dependency testing workflows pass in the expanded matrix.
  • Execute all updated notebooks to ensure they run successfully and that the updated recommended versions display correctly.
  • Perform integration tests to validate that dependency resolution works as expected with the new constraints in pyproject.toml.

@mdeyell-valid-mind mdeyell-valid-mind marked this pull request as ready for review March 24, 2026 20:12
Copy link
Copy Markdown
Contributor

@cachafla cachafla left a comment

Choose a reason for hiding this comment

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

Very nice

@mdeyell-valid-mind mdeyell-valid-mind merged commit 12b2ae5 into main Mar 24, 2026
21 of 22 checks passed
@mdeyell-valid-mind mdeyell-valid-mind deleted the mdeyell/sc-xxx/python314 branch March 24, 2026 20:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request python Pull requests that update Python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants