Skip to content

Conversation

@camUrban
Copy link
Owner

@camUrban camUrban commented Sep 2, 2025

Description

This pull request updates Ptera Software to require Python 3.13 (up from 3.10) and upgrades several dependencies to newer versions. It also updates project metadata to prepare for the imminent release of Ptera Software 3.2.0.

Motivation

There are several attractive new features in SciPy 1.16+ that require Python 3.11+.

Relevant Issues

This project closes #42.

Changes

  • Updated the required Python version to 3.13 across all configuration files (setup.cfg, .github/workflows/tests.yml, .idea/PteraSoftware.iml, .idea/misc.xml, pyproject.toml).
  • Modified the GitHub Actions workflow to use Python 3.13, cache pip dependencies, generate coverage reports in XML format, and upload them to Codecov (functionality which was previously broken).
  • Updated the project version to 3.2.0 in setup.cfg and make_installer.iss.

New Dependencies

  • Increased minimum required versions for key dependencies including matplotlib, numpy, pyvista, scipy, PySide6, and development tools like pre-commit, build, PyInstaller, and wheel in setup.cfg, requirements_ci.txt, requirements_dev.txt, README.md, and pyproject.toml.

Change Magnitude

Moderate: Medium-sized change that adds or modifies a feature without large-scale
impact.


Checklist

  • I have created or claimed an issue for this work as described in
    Contributing Code.
  • My branch is based on main and is up to date with the upstream main branch.
  • All calculations use S.I. units.
  • Code is formatted with black (line length = 88).
  • All new modules, classes, functions, and methods have docstrings in
    reStructuredText format.
  • Code is well documented with block comments where appropriate.
  • Code passes local automated checks (codespell, black, and tests).
  • If any major functionality was added or significantly changed, I have added or
    updated tests in the tests package.
  • Any external code, algorithms, or equations used have been cited in comments or
    docstrings.
  • PR description links all relevant issues and follows this template.

Bump required Python version to 3.13 and update package dependencies to newer versions across configuration files. Also increment application version to 3.2.0 in installer and setup files.
…uccessful coverage report upload for success.
@camUrban camUrban self-assigned this Sep 2, 2025
@camUrban camUrban added maintenance Improvements or additions to documentation, testing, or robustness feature New feature or request labels Sep 2, 2025
@codecov
Copy link

codecov bot commented Sep 2, 2025

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

@camUrban camUrban marked this pull request as ready for review September 2, 2025 02:54
@camUrban camUrban requested a review from Copilot September 2, 2025 02:55
Copy link
Contributor

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 updates Ptera Software to require Python 3.13 (up from 3.10) and prepares for the 3.2.0 release by upgrading multiple dependencies to newer versions that support SciPy 1.16+ features.

  • Updates Python version requirement from 3.10 to 3.13 across all configuration files
  • Upgrades minimum versions for key dependencies including matplotlib, numpy, pyvista, scipy, and PySide6
  • Improves CI workflow with better caching and Codecov integration

Reviewed Changes

Copilot reviewed 9 out of 13 changed files in this pull request and generated no comments.

Show a summary per file
File Description
setup.cfg Updates version to 3.2.0, Python requirement to 3.13, and dependency versions
requirements_dev.txt Upgrades development tool versions (pre-commit, build, PyInstaller, wheel)
requirements_ci.txt Updates CI dependency versions to match setup.cfg
pyproject.toml Updates build system dependencies and black target version to py313
make_installer.iss Updates version number for installer
README.md Updates documentation with new Python version and dependency requirements
CONTRIBUTING.md Minor documentation improvements (formatting changes)
.github/workflows/tests.yml Upgrades to Python 3.13, adds pip caching, and improves Codecov integration
.github/pull_request_template.md Minor wording change in checklist
Files not reviewed (2)
  • .idea/PteraSoftware.iml: Language not supported
  • .idea/misc.xml: Language not supported
Comments suppressed due to low confidence (1)

setup.cfg:1

  • There's a typo in the PR title - it shows '3.2,0' instead of '3.2.0'. While the actual version in the file is correct, the title should be corrected.
[metadata]

@camUrban camUrban changed the title Update to Python 3.13 and Prepare for Ptera Software 3.2,0 Release Update to Python 3.13 and Prepare for Ptera Software 3.2.0 Release Sep 2, 2025
Updated integration tests for unsteady ring vortex lattice method to set the logging_level parameter to 'Critical' when running the solver. Also updated Python SDK and Black executable path in .idea/misc.xml.
@camUrban camUrban merged commit 168c989 into main Sep 2, 2025
8 checks passed
@camUrban camUrban deleted the feature/update_from_python_3.10 branch September 2, 2025 03:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature New feature or request maintenance Improvements or additions to documentation, testing, or robustness

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE] Updating from Python 3.10

2 participants