feat: add Python 3.13 and 3.14 support#164
Conversation
|
Please update the branch. Additionally, keep only the changes to pyproject.toml and workflow files. |
42fd802 to
89bae60
Compare
|
Updated the branch and kept only |
|
@greptile |
Greptile SummaryAdds Python 3.13 and 3.14 support by updating CI test matrix, PyPI classifiers, and cibuildwheel build targets. The CI matrix now tests Python 3.10, 3.13, and 3.14 across all three platforms (macOS ARM64, Linux ARM64, Linux x64), creating 9 total test jobs. The separate wheel-building workflow will continue to build wheels for all supported versions (3.10-3.14) via cibuildwheel. Changes:
Note: The PR description mentions Python 3.14 being in alpha, but Python 3.14.3 was released as stable in October 2025, so the Confidence Score: 5/5
Important Files Changed
Last reviewed commit: bf1618f |
- Add Python 3.13 and 3.14 classifiers to pyproject.toml - Add cp313 and cp314 cibuildwheel build targets - Add Python 3.13 and 3.14 to CI test matrix - Enable allow-prereleases for setup-python (required for 3.14 alpha) Signed-off-by: Maxime Grenu <maxime.grenu@gmail.com>
89bae60 to
98a7e89
Compare
|
Added Python 3.14 support (classifier, cp314 cibuildwheel target, CI matrix). Also added |
Signed-off-by: Maxime Grenu <maxime.grenu@gmail.com>
Int4 quantization uses only 16 levels per dimension (vs 256 for Int8), resulting in larger rounding errors in distance computations. The previous 1e-4 absolute tolerance was too tight and caused flaky failures (observed diff: 1.22e-4 on values ~523.77). The Int8 test already has this EXPECT_NEAR commented out, relying solely on the relative IsAlmostEqual check. Signed-off-by: Maxime Grenu <maxime.grenu@gmail.com>
|
Fixed the flaky Root cause: The Fix: Widened the absolute tolerance from |
|
Python v3.14 was released in Oct. 7, 2025 https://docs.python.org/3/whatsnew/3.14.html ; we are now at v3.14.3. cluster2600 seems to have a knowledge cutoff around spring 2025. |
Python 3.14 is now a stable release (v3.14.3, released Oct 2025), so allow-prereleases: true is no longer needed in setup-python. Signed-off-by: Maxime Kawawa-Beaudan <maxkb@meta.com> Signed-off-by: Maxime Grenu <maxime.grenu@gmail.com>
|
Good catch — removed |
|
@greptile |
Summary
Add Python 3.13 and 3.14 support to zvec.
Changes
pyproject.tomlProgramming Language :: Python :: 3.13and3.14classifierscp313-*andcp314-*to cibuildwheel build targets.github/workflows/main.ymlpython-version: ['3.10', '3.13', '3.14'])allow-prereleases: trueinsetup-python(required for 3.14 alpha/beta)Notes
allow-prereleaseslets CI install the latest 3.14 pre-releaseChecklist
pyproject.tomlupdated