Skip to content

🆙 Add Python 3.14 Support#1035

Merged
shaneahmed merged 26 commits into
developfrom
dev-add-python3.14
May 18, 2026
Merged

🆙 Add Python 3.14 Support#1035
shaneahmed merged 26 commits into
developfrom
dev-add-python3.14

Conversation

@shaneahmed
Copy link
Copy Markdown
Member

@shaneahmed shaneahmed commented Mar 12, 2026

This PR introduces Python 3.14 support and refactors the conda environment testing workflow to improve maintainability, reproducibility, and cross-platform compatibility.


✨ Key Changes

✅ 1. Python 3.14 Support

  • Updated package metadata:
  • Extended supported Python versions in documentation:
  • Updated installation docs accordingly

✅ 2. Single Source of Truth for Dependencies

  • Added a new script:
    requirements/generate_conda_env.py
  • This script
    • Parses requirements.txt
    • Converts pip dependencies → conda-forge equivalents
    • Generates:
      requirements.conda.generated.yml
      
    • Eliminates the need to maintain multiple conda YAML files

✅ 3. Simplified Conda Workflow

  • Refactored .github/workflows/conda-env-create.yml:
  • Uses generated environment dynamically
  • Matrix testing across:
    • OS: Linux, macOS, Windows
    • Python: 3.11, 3.12, 3.13, 3.14
  • Ensures cross-platform compatibility (no shell-specific syntax)

✅ 4. Removed Redundant Environment Files

Deleted:

  • requirements.dev.conda.yml
  • requirements.win64.conda.yml
  • requirements.win64.dev.conda.yml

➡️ Replaced by automated environment generation


✅ 5. Test Stability Improvements (Python 3.14)

  • Updated test expectations for changed Python 3.14 error messages
  • Replaced multiprocessing with threading in tests to:
  • Improve CI stability
  • Avoid platform-specific multiprocessing issues

@shaneahmed shaneahmed self-assigned this Mar 12, 2026
@shaneahmed shaneahmed added this to the Release v2.1.0 milestone Mar 12, 2026
@shaneahmed shaneahmed added enhancement New feature or request dev tools Changes/Updates in Development tools dependencies Pull requests that update a dependency file labels Mar 26, 2026
@codecov
Copy link
Copy Markdown

codecov Bot commented May 8, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.88%. Comparing base (c69f8c1) to head (3c20b05).

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #1035      +/-   ##
===========================================
+ Coverage    99.87%   99.88%   +0.01%     
===========================================
  Files           85       85              
  Lines        11623    11623              
  Branches      1524     1524              
===========================================
+ Hits         11608    11610       +2     
+ Misses           9        7       -2     
  Partials         6        6              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@shaneahmed shaneahmed merged commit 1035a6d into develop May 18, 2026
55 checks passed
@shaneahmed shaneahmed deleted the dev-add-python3.14 branch May 18, 2026 21:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file dev tools Changes/Updates in Development tools enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant