Minimum Version Policy
This project follows the standard scientific-Python policy for supported runtime versions. In practical terms, this means the minimum supported version is chosen carefully to balance compatibility, user convenience, and the cost of supporting older interpreters.
Python support policy
The package is intended to support a modern Python baseline while remaining easy to install across common development environments. The general principle is:
the project supports at least the minor versions of Python released within a recent support window
it keeps pace with the latest supported minor releases
the minimum version is set explicitly in the packaging metadata
For this project, the current packaging metadata declares Python 3.9+ in
pyproject.toml. That means the library is designed to work with recent Python
versions while avoiding unnecessary restrictions on users who maintain modern
environments.
NumPy policy
The package does not currently depend on NumPy directly, but the broader scientific Python ecosystem often uses the same versioning model. A policy aligned with NEP 29 is a good fit for projects that want to remain broadly compatible while still adopting new runtime features when they become stable.
In other words:
support is kept to recent Python and NumPy releases
minimum versions are adjusted at appropriate release boundaries
patch releases avoid unnecessary compatibility breakage
This helps keep the package usable across development environments without committing to a long, costly deprecation burden.
Why this matters for this project
Because quantplus includes compiled Cython/C++ code, the build environment is
more sensitive to runtime and compiler changes than pure-Python libraries. A clear
minimum-version policy ensures that:
users know the supported baseline
CI systems can be configured reliably
build tooling remains stable across releases
compiled extensions continue to work across supported environments
The project is therefore expected to modernize its minimum supported versions at feature releases rather than patch releases, unless a critical compatibility fix requires otherwise.