Repository navigation
Add Python 3.14 support - #35
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Allow Py-Boost to be installed on Python 3.14, which was rejected by the
<3.14package constraint. Extend the constraint to<3.15, add the Python 3.14 classifier, and update the installation example and build script to use current CUDA 12 CuPy packages. The build script acceptsCUPY_PACKAGEfor other CUDA/Python combinations.Add CPU CI on Python 3.13 and 3.14 that builds both distributions, installs the wheel, and runs the entire
testsdirectory outside the source checkout. GPU tests are automatically skipped on the CPU runners, and skip reasons are included in the log (pytest -q -rs). Cover all three quantizers with float32/float64 input and missing values against NumPy bin lookup.Validation:
Requires-Python: >=3.8,<3.15and the Python 3.14 classifier in wheel metadata.bash -n build_package.shandgit diff --checkpassed.Additional checks exposed existing limitations, also reproduced on Python 3.13: Treelite 3.9.1 wheels contain internal CPython 3.8 tags that cause
pip checkto fail; single-output Treelite conversion rejects one-element leaf vectors; ONNX 1.23.2 rejects boolean values supplied for integer attributes by the existing exporter. These are unchanged by this PR; the GPU tests and the multioutput Treelite smoke checks pass.